1
我正在使用awk重新格式化文件中的某些字段,並且使用awk函數修復一個字段值(如果它爲負值)。這裏是我的awk命令:爲什麼awk函數只能從文件返回最後一行?
awk 'function fix_neg(value) {\
if(value < 0)\
return '$new_value'\
else\
return value\
} END { print $2,$1,fix_neg($3) }' input_file.txt
其中$ NEW_VALUE在此調用之前設置。我不明白爲什麼這隻返回重新格式化的input_file.txt最後一行(包含多行數據)。
感謝您的幫助。
除非您使用的是C shell衍生產品,否則反斜槓是不必要的。 shell知道單引號字符串還在繼續,因爲它還沒有看到第二個單引號。 – 2013-03-22 16:54:20