我正在使用Mac Yosemite,bash shell。我想在输出中输出单引号,我尝试了几件事,但没有成功......
awk -F, '{OFS=",";print ''$1'',$4,$6,$7}' my_list.csv
和
awk -F, '{OFS=",";print "'"$1"'",$4,$6,$7}' my_list.csv
这些都没有将单引号添加到我的输出中。我怎样才能做到这一点?
答案 0 :(得分:3)
使用变量是一种方法:
kent$ echo "a b c"|awk -v q="'" '$1=q$1q'
'a' b c
或者你选择逃避的方式:
kent$ echo "a b c"|awk '$1="'\''"$1"'\''"'
'a' b c
我更喜欢第一个。
答案 1 :(得分:2)
您也可以使用八进制代码:
# octal code 047 for '
awk -F, -v OFS=, '{print "\047" $1 "\047", $4, $6, $7}' my_list.csv