Это кажется довольно глупым, но я не нашел инструмент, который делает это, поэтому я решил, что попрошу просто убедиться, что он не существует, прежде чем пытаться его кодировать я:Печать определенных строк файла в терминале
Есть ли какой-либо простой способ для cat
или less
определенных строк файла?
Я надеюсь на поведение, как это:
# -s == start && -f == finish
# we want to print lines 5 - 10 of file.txt
cat -s 5 -f 10 file.txt
Даже что-то немного проще было бы иметь в виду, но я просто не знаю, какой-либо инструмент, который делает это:
# print from line 10 to the end of the file
cat -s 10 file.txt
Я думаю, что обе эти функции могут быть легко созданы со смесью head
, tail
и wc -l
, но, возможно, есть встроенные функции, которые делают это, о чем я не знаю?
Возможно также отметить, что из этих двух, Awk, вероятно, более достойным дальнейшего изучения. 'sed' может быть сложным, но вам все равно понадобится руководство, чтобы расшифровать любой нетривиальный скрипт. Awk - естественное расширение для сценария оболочки и будет необходимо для многих небольших задач, которые не совсем естественно делать в сценарии оболочки (хотя современные оболочки, такие как Bash, заполнили многие из этих дыр, но далеко не все) , – tripleee