
我的部分程式碼如下:
output=$(cat databaselog | awk '{print $9,$1,$2,$6}' )
echo $output >> savedfile
輸出將是這樣的,保存在一個名為savedfile的新檔案中
name1 date1 id1 ip1 name2 date2 id2 ip2 name3 date3 id3 ip3
但我希望它是這樣的:
name1 date1 id1 ip1
name2 date2 id2 ip2
name3 date3 id3 ip3
我知道這很容易,但我找不到正確的方法,請幫忙,謝謝!
答案1
當您回顯它$output
時,您需要雙引號。"$output"
否則,輸出會將換行符和其他空白轉換為空格。
對指令替換加雙引號也是一個好習慣。 output="$(...)"
而不是僅僅output=$(...)
例如
output="$( cat databaselog | awk '{print $9,$1,$2,$6}' )"
echo >> savedfile
echo "$output" >> savedfile
但你最好這樣做:
echo >> savedfile
awk '{print $9,$1,$2,$6}' databaselog >> savedfile