![]() |
|
|
Google unix.com
|
|||||||
| Форумы | Регистрация | Правила форума | Ссылки | Альбомы | ЧАВО | Список участников | Календарь | Поиск | Сегодняшние сообщения | Отметить форумы читать |
| Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь. |
Подробнее UNIX и Linux Темы форума можно найти полезные
|
||||
| Нить | Резьба для начинающих | Форум | Ответы | Последнее сообщение |
| дю из списка дю в общем списке | Movomito | Shell программирование и сценарии | 3 | 05-04-2008 10:33 PM |
| Список непревзойденной колонок | mohan705 | Shell программирование и сценарии | 3 | 12-12-2007 10:37 AM |
| Строка для столбцов | vskr72 | UNIX для чайников Вопросы И Ответы | 4 | 03-21-2007 09:53 AM |
| Как сгенерировать случайное список из данного списка | mskcc | Shell программирование и сценарии | 3 | 05-30-2006 04:30 AM |
| Сравнивая различные значения в 1 список с другой список | manualvin | Shell программирование и сценарии | 6 | 06-22-2004 07:42 AM |
![]() |
|
|
LinkBack | Резьба Инструменты | Искать в этом Thread |
Оценка:
|
Режимы дисплея |
|
|
|
||||
|
Список колонок и AWK помочь
Привет я новичок в этом форуме, и я начинающий, когда речь идет об оболочке программирования и программирования AWK. Но у меня имеются следующие проблемы:
Я список так: 1 2 3 4 5 6 7 8 Любой из файла или выхода из команды. То, что я хотел бы сделать, это организовать эти ценности в х колонок со значениями в каждой колонке, как это: 1 2 3 4 5 6 7 8 Где х определяет, сколько столбцов я хотел. Затем я хотел бы добавить, все ценности из колонки 1 и разделить его с числом строк (в данном случае 2). Забыли-то: это для Bourne оболочки сценарий. Возможно ли X в качестве входных переменных при выполнении сценария? Или же это возможно, вместо того, чтобы колонны, чтобы добавить каждую х элементов в списке, а затем принять в среднем? Последний раз редактировалось baghera; на 08-26-2007 02:09 PM.. |
|
||||
|
Добавить каждые 'X' элемент
Код:
awk -v var=4 -f sample.awk inputfile где это sample.awk Код:
(NR % var ) == 0 { sum+=$0; cnt++}
END {print sum, cnt }
Это добавляет 4'th каждый элемент списка. Если вы хотите, чтобы рассчитывать, начиная с первого столбца в списке, измените в sample.awk Код:
BEGIN { row_cnt=1 }
(NR % row_cnt ) == 0 { sum+=$0; cnt++; row_cnt+=var }
END {print sum, cnt }
|
|
||||
|
Попробуйте это: Код:
awk -v INPUT=$INPUT '
BEGIN { ORS=""}
{
print $0 " "
if (( NR % INPUT ) == 0) {
print "\n"
count++
}
if (( NR % INPUT ) == 1)
sum += $0
}
END {
op = sum/count
print op }' Filename
|
|
||||
|
Кошка файла | xargs-н <number пунктов в row> Код:
"/home/tdreader" > cat t.txt 1 2 3 4 5 6 7 8 9 12 12 32 5 66 56 343 8 875 434 0 "/home/tdreader" > cat t.txt | xargs -n 3 1 2 3 4 5 6 7 8 9 12 12 32 5 66 56 343 8 875 434 0 Если это файл с одного номера в линию, искать в этом Код:
cat filename | tr '\n' ' ' | xargs -n 3 |
|
||||
|
Я очень ценю помощь.
Мне нравится xargs вещь. Это потом можно добавить элемент в каждой колонке, и разделить ее на количество элементов в столбце. Я использовал эту команду: AWK '(сумма + \u003d $ 1 / 2) (sum1 + \u003d $ 2 / 2) (END печати суммы sum1)' Но $ 1 / 2, где 2 следует переменной (количество элементов в столбце). Также ranj @ CHN я не получите вашу работу, я должен делать что-то неправильно. Я просто скопировали то, что вы написали, и пытались сбить ее с: AWK-V VAR \u003d 2-F reader2.awk testfile.txt Но я только получаю ошибки. И я тоже пытался запустить ahmedwaseem2000 в программе, но я не получил, что для любой работы. Мне очень жаль, но я реально "Noob" на это. Но помогут Вам дают мне неоценимую помощь. |
|
||||
|
Почтовые ошибки
У поста ошибки и Unix окне, что вы подключены к - о / р от Код:
uname -a Это могло бы помочь определить проблему. Вы должны использовать "nawk'Вместо AWK на Solaris и'остолоп', Если его Linux. |
|
||||
|
Цитата:
Цитата:
ВАМ нужно назначить значение "INPUT" VARIABLE до запуска кода он еще даст вам "деление на нуль по модулю", как запустить INPUT \u003d 4 до запуска кода. |
![]() |
| Закладки |
| Теги |
| Linux |
| Резьба Инструменты | Искать в этом Thread |
| Режимы дисплея | Оценить эту ветку |
|
|