如何使用awk单引号分隔符?


11

我想使用awk从SQL输出中提取信息,如下所示:

(计数(不同的服务器类)='2')

并且需要提取数字,在此示例中为2。

我想执行以下操作,但无法弄清楚如何转义单引号:

<sqlCommand> | awk 'BEGIN{FS="'"}{print $2}'

如何在AWK中获取文字单引号作为字段分隔符?

Answers:


14

要在单引号字符串中插入单引号字符,请结束当前字符串,写入"'"或,\'然后再次开始该字符串。

在您的示例中

awk 'BEGIN{FS="'"'"'"}{print $2}'

要么

awk 'BEGIN{FS="'\''"}{print $2}'

但是,使用-F开关指定字段分隔符将产生更清晰的代码:

awk -F\' '{print $2}'

为什么将样式从更新-F"'"-F\'
WilliamKF 2012年

1
没有充分的理由。两者都有效,但第一个引证了我的口味。
丹尼斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.