Это правильный способ показать количество строк определенного файла?
cat file | grep * -c
Это правильный способ показать количество строк определенного файла?
cat file | grep * -c
Вы можете использовать эту команду:
wc -l <file>
Это вернет общее количество строк в предоставленном файле.
Ваша оболочка "расширит" звездочку в grep * -c
на все элементы в текущем каталоге, что приведет, например, к следующему:
grep foo bar baz -c
Что не то, что вы хотите.
Попробуй cat file | grep -c .
посчитать количество строк, содержащих хотя бы печатный символ, или cat file | wc -l
для подсчета количества строк.
Однако, если вход является файлом, вы можете рассмотреть возможность доступа к файлу вместо передачи его на стандартный ввод команды, которая выполняет подсчет. (например, wc -l file
или файл grep . -c file
).
Если вы не хотите, чтобы wc
показывал имя файла при присвоении ему имени файла, вы можете извлечь первое слово из вывода wc -l
с помощью вашего любимого фильтра, такого как cut(1)
: wc -l foo | cut -d' ' -f 1
или awk(1)
: wc -l foo | awk '{print $1}'
или что-то еще с тем же эффектом.
Пронумеруйте все непустые строки:
cat file | nl
Или включите все:
cat file | nl -ba