Chinaunix

标题: awk命令的一点小疑问 [打印本页]

作者: bikkuri    时间: 2016-02-20 01:06
标题: awk命令的一点小疑问
本帖最后由 bikkuri 于 2016-02-20 01:17 编辑

大家好!
我有一个问题向大家请教。
  1. [root@hp8:~]# date|awk '{print$NF}'
  2. 2016
  3. [root@hp8:~]# date|awk {'print$NF}'
  4. 2016
  5. [root@hp8:~]# date|awk {'print$NF'}
  6. 2016
  7. [root@hp8:~]# date|awk '{print$NF'}
  8. 2016
  9. [root@hp8:~]# date
  10. Sat Feb 20 01:03:27 CST 2016
  11. [root@hp8:~]#
复制代码
我想问的是为什么我把date|awk '{print$NF}'命令打错成了date|awk {'print$NF}'或date|awk {'print$NF'}或date|awk '{print$NF'}却一样可以得到正确的结果?
这条命令的四种写法没有差别吗?
谢谢。
作者: wh7211    时间: 2016-02-20 11:31
awk使用单引号的目的,就是不希望shell解释awk的语法,楼主的4种方式都达到了这个目的,因此会得到相同的结果。
作者: blackold    时间: 2016-02-20 12:50
回复 1# bikkuri


    不是awk问题,是shell问题.


echo -E  '{print$NF}'
echo -E  {'print$NF}'
echo -E  {'print$NF'}
echo -E  '{print$NF'}

如果在你的shell下,它们的结果一样,那么awk的结果也一样。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2