比较绕,不用死记硬背,以后用的时候,稍微多试几次就出来了。
awk 'BEGIN{print "a'"'"'s"}' //不用脱义,就多写几个单引号、双引号
awk 'BEGIN{print "a'\''s"}' //用脱义,脱义的是单引号
awk 'BEGIN{print "a\"s"}' //用脱义,脱义的是双引号
0
awk -F ':' '{print "'"'"'"$1}' /etc/passwd
"'"'"'" 为 双引号,单引号,双引号,特殊字符,双引号,单引号,双引号
是 一对双引号,一对单引号,一对双引号 一共三对
"'"'"'" 为 双引号,单引号,双引号,特殊字符,双引号,单引号,双引号
是 一对双引号,一对单引号,一对双引号 一共三对
0
本帖最后由 程城 于 2014-8-31 00:29 编辑
# awk '{print "this is a"$1}' test.txt
以学习,不错啊。
#awk -F ':' '{print "'"'"'"$1}' test.txt
# awk '{print "this is a"$1}' test.txt
以学习,不错啊。
#awk -F ':' '{print "'"'"'"$1}' test.txt
0
[root@linuxStudy ~]# awk -F ':' 'NR<5 {print "This is '"$"'" $1}' /etc/passwd
This is $root
This is $bin
This is $daemon
This is $adm
This is $root
This is $bin
This is $daemon
This is $adm
0
双引号:
awk '{print "\""}' #放大:awk '{print " \" "}'
使用“”双引号把一个双引号括起来,然后用转义字符\对双引号进行转义,输出双引号。
[root@CentOS_LAMP sed_test]# awk '{print "\"" $1}' 1.txt | head -5
"bash:x:0:0:root:/root:/bin/root
"bin:x:1:1:bin:/bin:/sbin/nologin
"daemon:x:2:2:daemon:/sbin:/sbin/nologin
"adm:x:3:4:adm:/var/adm:/sbin/nologin
"lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
单引号:
awk '{print "'\''"}' # 放大: awk '{print " ' \ ' ' " }'
使用一个双引号“”,然后在双引号里面加入两个单引号‘’,接着在两个单引号里面加入一个转义的单引号\',输出单引号。[root@CentOS_LAMP sed_test]# awk '{print "'\''" $1}' 1.txt | head -5
'bash:x:0:0:root:/root:/bin/root
'bin:x:1:1:bin:/bin:/sbin/nologin
'daemon:x:2:2:daemon:/sbin:/sbin/nologin
'adm:x:3:4:adm:/var/adm:/sbin/nologin
'lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
awk '{print "\""}' #放大:awk '{print " \" "}'
使用“”双引号把一个双引号括起来,然后用转义字符\对双引号进行转义,输出双引号。
[root@CentOS_LAMP sed_test]# awk '{print "\"" $1}' 1.txt | head -5
"bash:x:0:0:root:/root:/bin/root
"bin:x:1:1:bin:/bin:/sbin/nologin
"daemon:x:2:2:daemon:/sbin:/sbin/nologin
"adm:x:3:4:adm:/var/adm:/sbin/nologin
"lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
单引号:
awk '{print "'\''"}' # 放大: awk '{print " ' \ ' ' " }'
使用一个双引号“”,然后在双引号里面加入两个单引号‘’,接着在两个单引号里面加入一个转义的单引号\',输出单引号。[root@CentOS_LAMP sed_test]# awk '{print "'\''" $1}' 1.txt | head -5
'bash:x:0:0:root:/root:/bin/root
'bin:x:1:1:bin:/bin:/sbin/nologin
'daemon:x:2:2:daemon:/sbin:/sbin/nologin
'adm:x:3:4:adm:/var/adm:/sbin/nologin
'lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
0
awk -F ':' '$1~/root/ {print "\047"$1"\047"}' passwd
输出 'root'
awk -F ':' '$1~/root/ {print "'\''"$1"'\''"}' passwd print后是 双 单 单 单 双 $1 双 单 单 单 双
“ ’ \' ' "表示单引号
输出 'root'
awk -F ':' '$1~/root/ {print "'\''"$1"'\''"}' passwd print后是 双 单 单 单 双 $1 双 单 单 单 双
“ ’ \' ' "表示单引号
0
awk '{print "\"\"" $1}' 4.txt
""root:x:0:0:root:/root:/bin/bash
""bin:x:1:1:bin:/bin:/sbin/nologin
""daemon:x:2:2:daemon:/sbin:/sbin/nologin
""adm:x:3:4:adm:/var/adm:/sbin/nologin
""lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
""sync:x:5:0:sync:/sbin:/bin/sync
输出一对双引号~~~想试下能不能 \" 2的方式来表示 一个" 结果不行
""root:x:0:0:root:/root:/bin/bash
""bin:x:1:1:bin:/bin:/sbin/nologin
""daemon:x:2:2:daemon:/sbin:/sbin/nologin
""adm:x:3:4:adm:/var/adm:/sbin/nologin
""lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
""sync:x:5:0:sync:/sbin:/bin/sync
输出一对双引号~~~想试下能不能 \" 2的方式来表示 一个" 结果不行
编辑回复