如何從TAB分隔的字符串中選擇第一列?awk中的製表符分隔值
# echo "LOAD_SETTLED LOAD_INIT 2011-01-13 03:50:01" | awk -F'\t' '{print $1}'
以上將返回整個行,而不是像預期的那樣只是「LOAD_SETTLED」。
更新:
我需要改變的製表符分隔值的第三列。 以下不起作用。
echo $line | awk 'BEGIN { -v var="$mycol_new" FS = "[ \t]+" } ; { print $1 $2 var $4 $5 $6 $7 $8 $9 }' >> /pdump/temp.txt
但是,如果分隔符是逗號而不是製表符,則按預期工作。
echo $line | awk -v var="$mycol_new" -F'\t' '{print $1 "," $2 "," var "," $4 "," $5 "," $6 "," $7 "," $8 "," $9 "}' >> /pdump/temp.txt
AWK「BEGIN {FS = 「[\噸] +」}; {print $ 1}'#這就是我一直在尋找的東西。我的谷歌搜索是否正確? :) – shantanuo 2011-03-21 05:50:14
感謝這個評論,我發現:'awk'BEGIN {FS =「\ t」}; {print $ 1,FS,$ 2,FS,$ 3}'myFile.txt'打印前三列的製表符分隔值。 – Wok 2013-05-30 09:33:11
或者只是'awk'BEGIN {OFS =「\ t」}; {print $ 1,$ 2,$ 3}'' – 2015-07-22 03:07:19