Bash

如何連接兩個 Linux 命令的結果

  • October 17, 2018

有沒有一種簡單的方法可以在一行中連接兩個 Linux 命令的結果(即,不使用變數)?

我從附近的氣象站獲取當地的室外溫度。今天的結果是:

5.2

我只是想添加單位,所以結果應該是這樣的:

5.2°C

一個範例命令,幾乎給了我我想要的東西:

wget -q -O- "http://meteocentre.com/montreal/home_e.html" | grep -oP '(?<=Tn= ).*(?=&deg)' ; printf "°C\n"

或者由內而外地做:

printf "%s°C\n" "$(wget -q -O- "http://meteocentre.com/montreal/home_e.html" | grep -oP '(?<=Tn= ).*(?=&deg)')"

以便將來自的結果wget...|grep...作為命令替換收集並插入%sprintf.

echo,例如,只列印你給它的所有參數。您可以使用命令替換將命令的輸出轉換為字元串。

echo $(wget -q -O- "http://meteocentre.com/montreal/home_e.html" | grep -oP '(?<=Tn= ).*(?=&deg)') °C

引用自:https://unix.stackexchange.com/questions/475854