У меня есть эта команда:

find . -name "*.php"  -exec wc -L '{}' \; 

И я считаю, что это дает мне счет самой длинной строки для каждого файла. Но я ищу способ распечатать счет и местоположение файла, только если длина больше 500.

Кто-нибудь делал это раньше?

1 ответ1

1

вот грубый скрипт, который делает то, что вы хотите

find . -name "*.php"  -exec wc -L '{}' \; |
  while read maxlinelength filename
  do
    if [ 500 -lt $maxlinelength ]
    then
      echo $maxlinelength $filename
    fi
  done

выход find - wc комбинации конвейер некоторое while read цикла , который помещает каждую строку maxlinelength и имя файла в переменном $maxlinelength и $filename Затем if проверяет, меньше ли 500 чем $maxlinelength и печатает ли оно значения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .