среда, 4 августа 2010 г.

Наслаждайтесь Gawk

Перевод статьи: Fun With Gawk

15 февраля 2010, Джеймс Хайннэнт (James Hinnant)

Когда grep и sed бывает недостаточно, gawk может предоставить дополнительную лошадиную силу, которая вам необходима. Следующий совет содержит образец того, что можно делать с помощью gawk.

Выделить последний столбец из текстового файла, столбцы которого разделены пробелами:
$ cat myfile | gawk '{print $NF}'
или:
$ gawk '{print $NF}' myfile
Вывести количества файлов, которыми владеет каждый из пользователей в текущем каталоге:
$ /bin/ls -l | \
  gawk 'NR > 1 {counts[$3]++;}
END {for (s in counts) {
printf(" %-15s : % 5d\n",
s, counts[s]);}}' | \
  sort
Завершить ваши процессы (одно из применений - завершить зависший сеанс, если вы можете удалённо войти на рабочую станцию с другого компьютера):
$ ps -elf | \
  gawk -v me="$USER" '$3 == me {print $4}' | \
  egrep -v $$ | \
  xargs -i@@ kill -9 @@; kill -9 $$

Комментариев нет: