Làm cách nào để chọn cột đầu tiên từ chuỗi được phân tách TAB?
# echo "LOAD_SETTLED LOAD_INIT 2011-01-13 03:50:01" | awk -F'\t' '{print $1}'
Ở trên sẽ trả về toàn bộ dòng chứ không chỉ "LOAD_SETTLED" như mong đợi.
Cập nhật:
Tôi cần thay đổi cột thứ ba trong các giá trị được phân tách bằng tab. Sau đây không hoạt động.
echo $line | awk 'BEGIN { -v var="$mycol_new" FS = "[ \t]+" } ; { print $1 $2 var $4 $5 $6 $7 $8 $9 }' >> /pdump/temp.txt
Tuy nhiên, điều này hoạt động như mong đợi nếu dấu phân tách là dấu phẩy thay vì tab.
echo $line | awk -v var="$mycol_new" -F'\t' '{print $1 "," $2 "," var "," $4 "," $5 "," $6 "," $7 "," $8 "," $9 "}' >> /pdump/temp.txt