Сделать новую строку выше последней строка и добавьте туда что-нибудь

Puedes hacer esto con tuberías:

./myCMD | grep keyword > tmp

Esto solo escribirá líneas que contengan "palabra clave" en el archivo tmp.

Si desea ver el resultado completo, pero solo registra un subconjunto en un archivo, agreguetee(suponiendo que su shell admita la sustitución de procesos):

./myCMD | tee >(grep keyword > tmp)
0
12.12.2015, 03:00
1 ответ

Можно задержать печать на строку, а затем использовать блок END:

awk 'NR > 1 {print line} {line = $0} END {printf "%s\n%s\n", "something added here", line}'

Я сохраняю текущую строку в line, а затем печатаю в следующей итерации. В блоке END, следовательно, line - это последняя строка, которая еще не была напечатана.

$ printf "%s\n" {1..4} | awk 'NR > 1{print line} {line = $0} END {printf "%s\n%s\n", "something added here", line}'
1
2
3
something added here
4
0
29.04.2021, 00:20

Теги

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