Объединить два результата команды в одну строку при перенаправлении стандартного вывода

8

В скрипте cron я хочу записывать температуру процессора в формате

[datetime] temp

используя dateи acpi -t. Как я могу перенаправить ( >>) эти две команды в одну строку в файле журнала?

Дэвид Ториссон
источник

Ответы:

11

Попробуйте просто сделать:

echo $(date) $(acpi -t) >> your_log_file

Возможно, вы захотите указать компактный формат даты, чтобы сделать ваш файл журнала более простым для анализа и быть независимым от настроек среды / локали (что-то вроде, $(date +"%Y%m%d %H%M%S")например).

Мат
источник
4

ну, возможно, на старых системах (solaris8 fe ^^) без bash:

x=`date '+%Y%m%d %H%M%S'`; y=`acpi -t`; echo "$x $y" >>your_log_file
волк
источник
1
Даже Solaris 8 понимает $(…), что это POSIX-совместимый. Но вы должны использовать /usr/xpg4/bin/shвместо /bin/shSolaris 8 все /bin/shеще оболочку Bourne.
Жиль "ТАК ... перестать быть злым"
Ааа, никогда не использовал / usr / xpg4 / bin / sh, мы бы сэкономили некоторые усилия в те дни, используя только оболочку Bourne.
волк
Как этот ...
mikiemorales