Как вставить несколько пустых строк после каждой строки


Ответы:


12

Это работа для sed:

sed -e 'G;G;G;G;G' file

С awk:

nawk -vORS='\n\n\n\n\n\n' 1 file

Или более короткая версия:

awk 'ORS="\n\n\n\n\n\n"' file

или избегайте установки ORSдля каждой строки ввода:

awk 'BEGIN{ORS="\n\n\n\n\n\n"};1' file

Или этот вариант:awk 'ORS="\n\n\n\n\n\n"'
Янис

Или этот вариант:sed 's/$/\n\n\n\n\n/g' file
Dani_l

@Dani_l: это работает только в GNU sed
cuonglm

@cuonglm этого не знал, спасибо за информацию. Какая часть специфична для GNU? \ n в замен?
Dani_l

@Dani_l: Да, \nв замене s///.
Cuonglm


0

Возможно, вы захотите использовать nlдля этого тоже. Это приходит мне в голову, потому что, когда я делаю подобные вещи, я часто нахожу полезным сохранить оригинальные номера строк.

eval "nl -ba -s'$(printf "\n\n\n\n\n'")" <infile

Также prесть спецификация для -dаргумента oublespace - который удваивает все переводы строк при вводе при выводе.

Но sedтоже хорошо.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.