Количество строк не работает должным образом в Unix - PullRequest
0 голосов
/ 28 июля 2011

Я пытаюсь получить количество строк в переменной.Исходный файл filename.dat содержит 2 строки записей:

112233; 778899

445566

Скрипт 1

line_cnt=$(more /home/filename.dat | wc -l)
echo $line_cnt

Когда я запускаю этот скрипт, я получаю вывод 2. Теперь у меня есть измененная версия:

Скрипт 2

filename=/home/filename.dat
line_cnt=$(more ${filename} | wc -l)
echo $line_cnt

Входной файл имеет те же записи.Но это дает мне вывод 5, хотя он имеет только 2 записи.

Может кто-нибудь сказать мне, что не так?

Редактировать - исправил путь к файлу во 2-м сценарии

1 Ответ

1 голос
/ 28 июля 2011
line_cnt=`cat ${filename} | wc -l`

Кот $ {имя файла} | wc -l должен быть в обратных кавычках.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...