`

awk处理特殊字符(原创)

 
阅读更多

单引号 ( ' ' )

如果我们想查找的是Susan Goldberg,不能直接使用grep Susan Goldberg phonebook命令,grep会把Goldberg和phonebook当作需要搜索的文件

$ grep 'Susan Gold' phonebook
Susan Goldberg 403-212-4921

当shell碰到第一个单引号时,它忽略掉其后直到右引号的所有特殊字符

如果想打印单引号,可以采用如下方式

 

$ awk 'BEGIN{print "'\''"} '

'

或者用047代替单引号

 

$ awk '{print "\047"}'

'

 

双引号 ( " " )
双引号作用与单引号类似,区别在于它没有那么严格。单引号告诉shell忽略所有特殊字符,而双引号只要求忽略大多数,具体说,括在双引号中的三种特殊字符不被忽略:$,\,` ,即双引号会解释字符串的特别意思,而单引号直接使用字符串.如果使用双引号将字符串赋给变量并反馈它,实际上与直接反馈变量并无差别。如果要查询包含空格的字符串,经常会用到双引号。
$ x=*
$ echo $x
hello.sh menus.sh misc.sh phonebook tshift.sh
$ echo '$x'
$x
$ echo "$x"
*
这个例子可以看出无引号、单引号和双引号之间的区别。在最后一种情况中,双引号告诉shell在引号内照样进行变量名替换,所以shell把$x替换为*,因为双引号中不做文件名替换,所以就把*作为要显示的值传递给echo。
对于第一种情况需要进一步说明,shell在给变量赋值时不进行文件名替换(这从第三种情况中也能看出来),各步骤发生的精确次序如下:
shell扫描命令行,把x的值设为星号*;
shell再次扫描命令行,碰到星号*,把它替换成当前目录下的文件清单;
shell启动执行echo命令,把文件清单作为参数传递给echo.
这个赋值的先后次序非常重要:shell先作变量替换,然后作文件名替换,最后把这行处理为参数
反引号(``)
命令替换是指shell能够将一个命令的标准输出插在一个命令行中任何位置。shell中有两种方法作命令替换:把shell命令用反引号或者$(...)结构括起来,其中,$(...)格式受到POSIX标准支持,也利于嵌套。
$ echo The date and time is `date`
The date and time is 三 6月 15 06:10:35 CST 2005
$ echo Your current working directory is $(pwd)
Your current working directory is /home/howard/script.
反斜杠 backslash-escaped( \ )
反斜杠一般用作转义字符,或称逃脱字符,linux如果echo要让转义字符发生作用,就要使用-e选项,且转义字符要使用双引号
echo -e "\n"
反斜杠的另一种作用,就是当反斜杠用于一行的最后一个字符时,shell把行尾的反斜杠作为续行,这种结构在分几行输入长命令时经常使用

 

 

参考至:http://www.cnblogs.com/rootq/articles/1417138.html

                http://blog.chinaunix.net/uid-639516-id-2692529.html

本文原创,转载请注明出处、作者

如有错误,欢迎指正

邮箱:czmcj@163.com

0
4
分享到:
评论

相关推荐

    AWK文件处理总结

    awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理awk文本的处理

    巧用AWK处理二进制数据文件

    awk是unix,linux中处理文本的好工具,本文用一个实例说明awk脚本的编写及使用.

    linux-利用tcpdump抓包和awk处理写的基于端口的流量统计

    利用tcpdump抓包和awk处理写的基于端口的流量统计

    awk文本处理工具

    linux运维,文本处理三剑客之,awk文本处理工具。非常详细!

    awk处理两个文件的方法

    用awk处理两个文件的方法:特定域的合并、替换等

    用awk数组处理两个文件

    主要讲解了关于shell中用awk数组处理文件的用法

    awk学习awk学习awk学习awk学习

    awk学习awk学习awk学习awk学习awk学习awk学习awk学习

    awk入门到精通.pdf

    此外, awk内建有pipe的功能, 可将处理中的数据传送给外部 的 Shell命令加以处理, 再将Shell命令处理后的数据传回awk程序, 这个特点也使得awk程序很 容易使用系统资源. 由于awk具有上述特色, 在问题处理的过程中, 可...

    awk原创入门文档

    能够快速了解awk,能够利用awk简单处理文档

    AWK用法AWK用法AWK用法

    awk ‘/101/’ file 显示文件file中包含101的匹配行。 awk ‘/101/,/105/’ file awk ‘$1 == 5′ file awk ‘$1 == “CT”‘ file 注意必须带双引号 awk ‘$1 * $2 >100 ‘ file awk ‘$2 >5 && $2<=15' file

    学习和理解AWK的最佳书籍Effective AWK Programming

    这本书对awk的编程模型、基本语法有简单明了的介绍,在进行数据处理、文本处理、报表、试验算法方面的应用也有很多好的实例。  由于是88年的老书,其中对gawk最新版本对awk的扩展没有提及,但这并不妨碍其称为一本...

    awk用法小结--有关awk的材料

    1. awk非常适合于结构化的文本文件(行、列数据)复杂处理。相对于sed而言,它可进行复杂的编程处理,并且可以产生复杂的报表输出。 2. awk通常有三个版本,旧awk、nawk(新)、gawk。Solaris下建议用nawk,因为旧...

    linux 文本处理 awk 手册

    awk 是一种程序语言. 它具有一般程序语言常见的... 此外, awk内建有pipe的功能, 可将处理中的数据传送给外部的 Shell命令加以处理, 再将Shell命令处理后的数据传回awk程序, 这个特点也使得awk程序很容易使用系统资源.

    AWK AWK 详细使用文档

    AWK 详细使用文档 AWK 详细使用文档 AWK 详细使用文档

    教你如何使用 awk 处理文本内容.doc

    Awk是为高级文本处理而设计的非常强大的工具。它逐行搜索扫描文件,将输入的每行分割成字段,将输入行或字段与模式进行比较,并对匹配的结果执行操作。

    awk用法__都是例子

    awk用法__都是例子 awk用法__都是例子 awk用法__都是例子 awk用法__都是例子

    awk教程-awk教程.rar

    awk 入门教程_阮一峰的网络日志.pdf 每天学习一个命令:awk 处理文本.pdf 在Window中使用 AWK.pdf

    awk参考资料下载awk

    awk参考资料, awk参考资料详情.

    awk详细用法小结awk awk

    因为遇到了awk问题,所以找到这个小结,共享一下

    linux环境下awk开发

    你可能对UNIX比较熟悉,但你可能对awk很陌生,这一点也不奇怪,的确,与其优秀的功能相比,awk还远没达到它应有的知名度。awk是什么?与其它大多数UNIX命令...正是这三个人创造了awk---一个优秀的样式扫描与处理工具

Global site tag (gtag.js) - Google Analytics