Shell 如何在awk命令中重写单个倒逗号
如何在Shell 如何在awk命令中重写单个倒逗号,shell,unix,Shell,Unix,如何在awk命令中重写单个倒逗号 cat a.txt |awk '{print "Students name is '"$1"'"}' 我希望输出如下: Students name is 'Rajeev' 使用以下命令: awk -v q="'" '{print "Students name is " q $1 q}' 使用以下命令: awk -v q="'" '{print "Students name is " q $1 q}' 您可以对输出中所需的每个单引号使用“” 第一个引号结束
awk
命令中重写单个倒逗号
cat a.txt |awk '{print "Students name is '"$1"'"}'
我希望输出如下:
Students name is 'Rajeev'
使用以下命令:
awk -v q="'" '{print "Students name is " q $1 q}'
使用以下命令:
awk -v q="'" '{print "Students name is " q $1 q}'
您可以对输出中所需的每个单引号使用“
”
第一个引号结束单引号字符串。然后我们开始一个双引号字符串,它简单地扩展为一个单引号。然后,我们为命令的其余部分输入一个新的单引号字符串
由于字符串之间没有空格,bash将它们串在一起。i、 e.“a”'b'
与“ab”
或“ab”
您可以对输出中所需的每个单引号使用“'”
第一个引号结束单引号字符串。然后我们开始一个双引号字符串,它简单地扩展为一个单引号。然后,我们为命令的其余部分输入一个新的单引号字符串
由于字符串之间没有空格,bash将它们串在一起。i、 e.“a”'b'
与“ab”
或“ab”
相同。您可以执行以下操作:
echo ff | awk $'{print "Students name is \'" $1 "\'" }'
对形式为$'string'的单词进行特殊处理。单词扩展为字符串,并按照ANSI C标准的规定替换反斜杠转义字符。反斜杠转义序列(如果存在)解码如下:
\\ backslash
\' single quote
\" double quote
\n new line
...
如前所述,您可以执行以下操作:
echo ff | awk $'{print "Students name is \'" $1 "\'" }'
对形式为$'string'的单词进行特殊处理。单词扩展为字符串,并按照ANSI C标准的规定替换反斜杠转义字符。反斜杠转义序列(如果存在)解码如下:
\\ backslash
\' single quote
\" double quote
\n new line
...
如前所述为了避免逃避其他技巧,您可以使用它的八进制表示法,如下所示:
$ awk 'BEGIN{print "\047"}'
'
因此:
为了避免逃避其他技巧,您可以使用它的八进制表示法,如下所示:
$ awk 'BEGIN{print "\047"}'
'
因此:
谢谢你的提问!谢谢你的提问!