Каков наилучший способ вывода из файла, начиная с определенной строки (большое число, например, 70000). Что-то вроде:
cat --line=70000 <file>
Каков наилучший способ вывода из файла, начиная с определенной строки (большое число, например, 70000). Что-то вроде:
cat --line=70000 <file>
Посмотрите на хвост, точнее, это --lines =+N переключатель:
tail --lines=+100 <file>
Самый очевидный способ - это tail
. Синтаксис может немного отличаться в зависимости от того, какую ОС вы используете:
tail -n +70000
Если вы не можете заставить tail
работать, вы можете использовать sed
, но это может закончиться медленнее:
sed -pe '1,69999d'
Если вместо номера строки вам нужно начать перечисление со строки, содержащей данную $phrase
, попробуйте следующее.
more -1000 +/"$phrase" yourfilename | sed '1,4d'
-1000 будет непрерывно перечислять текст до 1000 строк; Вы можете изменить это при необходимости.
Команда sed
отрежет первые 4 строки вывода, которые были автоматически вставлены more
, содержащие пустую строку, сообщение «... пропуск» и две строки, предшествующие вашей предполагаемой стартовой строке. Я думаю, это может варьироваться в зависимости от вашей системы.
Вы можете использовать параметр NR с командой awk :
cat <file> | awk '{if (NR>=7000) print}'
хвост +250