Как скопировать первые несколько строк гигантского файла и добавить строку текста в конце его с помощью некоторых команд Linux?
Как скопировать первые несколько строк гигантского файла и добавить строку текста в конце его, используя некоторые команды Linux?
3 ответа:
The первый
n
строки. Вариации таковы:head -7 file head -n 7 file head -7l file
который получит первые 7 строк файла под названием
"file"
. Команда зависит от вашей версииhead
. Linux будет работать с первым.чтобы добавить строки в конец того же файла, используйте:
echo 'first line to add' >>file echo 'second line to add' >>file echo 'third line to add' >>file
или:
echo 'first line to add second line to add third line to add' >>file
сделать это одним ударом.
Итак, связывая эти две идеи вместе, если вы хотите получить первые 10 строк до
output.txt
и добавьте строку с пятью"="
символы, вы могли бы использовать что-то вроде:( head -10 input.txt ; echo '=====' ) > output.txt
в этом случае мы выполняем обе операции в суб-оболочке, чтобы объединить выходные потоки в один, который затем используется для создания или перезаписи выходного файла.
Я предполагаю, что вы пытаетесь достичь, чтобы вставить строку после первых нескольких строк текстового файла.
head -n10 file.txt >> newfile.txt echo "your line >> newfile.txt tail -n +10 file.txt >> newfile.txt
Если вы не хотите, чтобы остальные строки из файла, просто пропустите хвостовую часть.
первые несколько строк:
man head
.добавить строки: используйте
>>
оператор (?) в Баш:echo 'This goes at the end of the file' >> file