web-development-kb-pt.site

Como adiciono novas linhas entre as linhas impressas na linha de comando?

Os logs de correio são incrivelmente difíceis de ler. Como eu poderia gerar uma linha em branco entre cada linha impressa na linha de comando? Por exemplo, diga que estou cumprimentando o log. Dessa forma, várias linhas quebradas não estão sendo confundidas.

31
xenoterracide
sed G 
# option: g G    Copy/append hold space to pattern space.

G não é usado com frequência, mas é bom para essa finalidade. sed mantém dois espaços de buffer: o "espaço padrão" e o "espaço de espera". As linhas processadas por sed geralmente fluem pelo espaço do padrão, à medida que vários comandos operam em seu conteúdo (s///, p, etc.); o espaço de espera começa vazio e é usado apenas por alguns comandos.

O comando G acrescenta uma nova linha e o conteúdo do espaço de espera ao espaço do padrão. O programa acima sed nunca coloca nada no espaço de espera, então G acrescenta efetivamente apenas uma nova linha a cada linha processada.

53
Chris Johnsen

Use awk para adicionar uma nova linha extra. Isso também permite filtrar coisas que você não deseja.

awk '{print $0,"\n"}' | less
9
KeithB

Use sed e substitua a linha inteira por si só mais um caractere de nova linha extra:

grep foo /var/log/maillog | sed -e "s/^.*$/&1\n/"
5
fschmitt

É isso que você procura?

grep SPAM mail.log | while read -r line; do echo; echo $line; done

3
Nifle

Tubo | qualquer saída para:

sed G

Exemplo:

ls | sed G

Se vocês man sed você verá

G Anexa um caractere de nova linha seguido pelo conteúdo do espaço de espera no espaço do padrão.

0
jasonleonhard

Se for mais do que apenas visual, prefiro enviá-los para um arquivo de texto e abrir com um editor de texto para que você possa definir as linhas para quebrar ou não e fazer pesquisas facilmente ... e excluir as linhas indesejadas e assim por diante sem tendo que digitar muitos comandos.

cat file.log > log.txt e gedit log.txt ou um editor de terminal como o nano

Editor cp file.log log.txt que obviamente é mais fácil e rápido ... graças ao comentário do KeithB

0
laurent