如何在一行中輸出多個命令的結果?

如何在一行中輸出多個命令的結果?

我有這個 bash 命令列:

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

我期望得到這樣的輸出:

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

但我總是得到這個(2行):

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

我嘗試並閱讀了很多。沒有成功...:-(

答案1

使用date | tr -d '\n'而不是date.

答案2

您可以透過 powershell 對日期和樹輸出進行換行替換。

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

答案3

這是date在日期後列印換行符的程序。

嘗試替換date

echo -n `date`

答案4

我找到了解決方案。

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

相關內容