читать и печатать файл построчно вместе с номером строки и общим количеством строк в каждой строке в bash - PullRequest
0 голосов
/ 02 ноября 2019

Я хочу написать bash, чтобы он считывал файл построчно как переменную и в выводе выводил общее количество строк, номер каждой строки и значение каждой строки. например: file.txt:

123456
543215
655778
874595
865940

в выводе bash Я хочу:

0501 123456
0502 543215
0503 655778
0504 874595
0505 865940

для чтения файла я нашел это:

filename="./file.txt"
while IFS= read -r line
do 
    echo "$line"
done < $filename

иДля подсчета количества строк я нашел это:

numberoflines=$(sed -n '$=' file.txt)   
for i in $(seq $numberoflines)
do
    echo "$i"
done

Заранее спасибо.

1 Ответ

0 голосов
/ 02 ноября 2019
nl -w2 -ba -n rz filename | sed "s/^/$(wc -l < filename)/"

nl - инструмент командной строки для нумерации строк файла. Этот набор опций позволяет сделать выходной формат похожим на тот, который вы указали в вопросе. Проверьте nl --help для получения дополнительной информации.

sed команда предварительно ожидает общее количество строк для вывода.

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