SED - адрес N строк до конца файла

Почему вы заключаете параметры функций оболочки в круглые скобки? Попробуйте это:

function alterpdf(){
  swap titlepage_$1.tex titlepage_$2.tex
  swap titlepage_$1.pdf titlepage_$2.pdf
  pdflatex allTitle page.tex
  }
0
22.01.2020, 02:34
2 ответа

Возможно, вы захотите перевернуть файл, взять первые N строк, а затем отменить вывод этого

$ seq 100 > file
$ tac file | sed -n 5,10p | tac
91
92
93
94
95
96
1
28.01.2020, 02:54

Как и в других ответах, я не знаю способа сделать это в одной строке с помощью sed, за исключением, возможно, переноса большого буфера, но с двумя строками это возможно проще:

NUM_LINES=$((`sed -n $= file1.txt`-20))   # or however many lines you want instead of 20
sed -i "$NUM_LINES r file2.txt" file1.txt

Может показаться, что вы хотели сделать это в одну строку, и потенциально вы могли бы использовать множество N;N;с, но это, вероятно, не очень практично.

0
05.06.2021, 15:20

Теги

Похожие вопросы