Просматривая 2D-массив

У меня есть выражение

ls -l `find . -type f` | tr -s [:space:] | cut -d ' ' -f 5 | sort | uniq -c  | tr -s [:space:] | sort -k 2n 

, которое создает двумерный массив, например:

 xx yy
 xx yy
 xx yy

где xx - количество случаев и yy - размер файлов с частотой xx. Мне нужно сравнить каждую ячейку yy с некоторыми числами (например, if (yy <100 B) .. if (yy

awk '{print $1;}'

, но он занимает всего один столбец, и я не могу указать строку, как, например, в C.
Можно как-то это сделать? он должен работать на dash, ksh и bash.

0
17.03.2017, 21:58
1 ответ

Перед каждым блоком в awk можно поставить условие, которое должно быть выполнено.

awk '$2 < 100 {for (i = 0; i < $1; i++) printf "#"; next;}
     $2 < 500 {for (i = 0; i < $1; i++) printf "x"; next;}
     ...'
0
28.01.2020, 04:47

Теги

Похожие вопросы