Вы можете использовать оболочку для удаления имени файла. Преимущество этого состоит в том, что второй процесс не запускается как cat
, cut
, sed
или awk
:
var=$(wc -l _your_file_)
nb_lines=${var%% *}
Вы также можете переписать nb_lines=${var%% *}
с помощью nb_lines=${var/ */}, but the 2nd form is less portable being
bash`.
Обновление
Я читал выше, что некоторые выходные данные wc
начинаются с пробелов, поэтому вышеприведенное можно переписать:
#var=$(wc -l _your_file_)
var=" 3 file"
var=$(echo $var)
nb_lines=${var%% *}
Использование echo
для избавления от лишних пробелов.