Voglio inserire 5 righe vuote dopo ogni riga nel mio file di input.
foo.txt
:
line 1
line 2
line 3
out.txt
:
line 1
line 2
line 3
...
Solaris 5.10 nawk
o sed
.
Voglio inserire 5 righe vuote dopo ogni riga nel mio file di input.
foo.txt
:
line 1
line 2
line 3
out.txt
:
line 1
line 2
line 3
...
Solaris 5.10 nawk
o sed
.
Risposte:
Questo è il lavoro per sed
:
sed -e 'G;G;G;G;G' file
Con awk
:
nawk -vORS='\n\n\n\n\n\n' 1 file
O versione più corta:
awk 'ORS="\n\n\n\n\n\n"' file
o evitare l'impostazione ORS
per ciascuna riga di input:
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
\n
nella parte di sostituzione di s///
.
Un altro, con printf
cat file.txt | xargs printf "%s\n\n\n\n\n"
Per output in un file
(cat file.txt | xargs printf "%s\n\n\n\n\n") > out.txt
Potresti voler usare anche nl
per questo. Mi viene in mente perché quando faccio cose del genere trovo spesso utile conservare i numeri di riga originali.
eval "nl -ba -s'$(printf "\n\n\n\n\n'")" <infile
Inoltre pr
è specificato per l' -d
argomento spazio oubles - che raddoppierà tutte le nuove righe nell'input sull'output.
Ma va anche sed
bene.