Bash
如何連接兩個 Linux 命令的結果
有沒有一種簡單的方法可以在一行中連接兩個 Linux 命令的結果(即,不使用變數)?
我從附近的氣象站獲取當地的室外溫度。今天的結果是:
5.2
我只是想添加單位,所以結果應該是這樣的:
5.2°C
一個範例命令,幾乎給了我我想要的東西:
wget -q -O- "http://meteocentre.com/montreal/home_e.html" | grep -oP '(?<=Tn= ).*(?=°)' ; printf "°C\n"
或者由內而外地做:
printf "%s°C\n" "$(wget -q -O- "http://meteocentre.com/montreal/home_e.html" | grep -oP '(?<=Tn= ).*(?=°)')"
以便將來自的結果
wget...|grep...
作為命令替換收集並插入%s
到printf
.
echo
,例如,只列印你給它的所有參數。您可以使用命令替換將命令的輸出轉換為字元串。echo $(wget -q -O- "http://meteocentre.com/montreal/home_e.html" | grep -oP '(?<=Tn= ).*(?=°)') °C