Я не уверен, что возможно сделать все, что Вы спрашиваете, потому что man(1)
отправляет отформатированные данные страницы справочника в Вашу программу пейджера через канал. Это предотвратило бы показ имени файла, с одной стороны.
Можно получить количество строки, по крайней мере, как так:
MANPAGER
или PAGER
переменная среды к less
.-M
к Вашему LESS
переменная среды, для получения "долгой подсказки", которая включает количество строки.Вместо -M
, можно создать собственное less
подсказка с -P
опция получить еще больше деталей. Снова, тем не менее, существуют некоторые вещи в том, что Вы спрашиваете это less
просто не будет иметь доступа к при действии как man
программа пейджера.
Что-то вроде этого [обновленное]?
perl -n -e 'if (/^\S+\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/) { print if $1==100||$2==100||$3==100||$4==100||($1==0&&$2==0&&$3==0&&$4==0) }' input.txt
Будет работать с разделенными столбцами пространства также.
Также может быть выполнен awk
:
awk '$2 ~ /^0$/ && $3 ~ /^0$/ && $4 ~ /^0$/ && $5 ~ /^0$/ || /100/' $file