Como gerar os resultados de vários comandos em uma linha?

Como gerar os resultados de vários comandos em uma linha?

Eu tenho esta linha de comando bash:

{echo -n ROT: \  ; date ; tree /Volumes/WD\ Ultra\ 2TB\ ROT/Bilder\ Archiv | tail -1 ;} >> /Users/reinard/Desktop/TestRot.txt

Eu esperava ter esta saída:

ROT:  Sa  5 Dez 2015 18:14:52 EET 6651 directories, 208455 files

mas sempre recebo isso (2 linhas):

ROT:  Sa  5 Dez 2015 18:14:52 EET
6651 directories, 208455 files

Eu tentei e li muito. Sem sucesso... :-(

Responder1

Use date | tr -d '\n'em vez de date.

Responder2

Você pode fazer uma substituição de caractere de nova linha via PowerShell nas saídas de data e árvore.

https://ss64.com/ps/replace.html

Responder3

Este é dateo programa que imprimiu uma nova linha após a data.

Tente substituir datepor

echo -n `date`

Responder4

Eu encontrei a solução.

echo -n 'ROT:      ' $(date) ' :: ' $(tree /Volumes/WD\ Ultra\ 2TB\ ROT/Bilder\ Archiv | tail -1) $'\n' >> /Users/reinard/Desktop/ArchivBilderCount.txt

informação relacionada