您的位置: 首页 >> 新闻中心 >> 计算机 >> IT认证 >> 厂商认证 >> Linux认证
老手经验谈 介绍UNIX高手的十大习惯[5]
精英教育阅读提示:清单 16. 好习惯 7 的示例:使用 xargs 工具来将文本筛选到单个行中 ~/tmp $ ls -l | xargs -rw-r--r-- 7 joe joe 12043 Jan 27 20:36 December_Report.pdf -rw-r--r-- 1 \ root root 238 Dec 03 08:19 README drwxr-xr-x 38 joe joe 354082 Nov 02 \ 16:07 a -rw-r--r-- 3 joe joe 5096 Dec 14 14:26 archive.tar -rwxr-xr-x 1 \ joe joe 3239 Sep 30 12:40 mkdirhier.sh ~/tmp $
■ 最新课程推荐更多课程>>
学校培训课程开课时间上课地点精英价报名
中亚培训 Linux操作系统入门课程电话预约东城教学区¥1470
中 科 院 Linux下C语言开发自费电话预约海淀教学区¥2528
中 科 院 Linux下C语言开发公费电话预约海淀教学区¥3096
清华信管 Linux系统管理工程师电话预约清华大学教学¥3136
东方瑞通 CCNA 培训班电话预约海淀区知春路¥960
  谨慎使用 xargs

     从技术上讲,使用 xargs 很少遇到麻烦。缺省情况下,文件结束字符串是下划线 (_);如果将该字符作为单个输入参数来发送,则它之后的所有内容将被忽略。为了防止这种情况发生,可以使用 -e 标志,它在不带参数的情况下完全禁用结束字符串。

     了解何时 grep 应该执行计数——何时应该绕过

     避免通过管道将 grep 发送到 wc -l 来对输出行数计数。grep 的 -c 选项提供了对与特定模式匹配的行的计数,并且一般要比通过管道发送到 wc 更快,如以下示例所示:

     清单 17. 好习惯 8 的示例:使用和不使用 grep 的行计数

     ~ $ time grep and tmp/a/longfile.txt | wc -l

     2811

     real 0m0.097s

     user 0m0.006s

     sys 0m0.032s

     ~ $ time grep -c and tmp/a/longfile.txt

     2811

     real 0m0.013s

     user 0m0.006s

     sys 0m0.005s

     ~ $

     除了速度因素外,-c 选项还是执行计数的好方法。对于多个文件,带 -c 选项的 grep 返回每个文件的单独计数,每行一个计数,而针对 wc 的管道则提供所有文件的组合总计数。

     然而,不管是否考虑速度,此示例都表明了另一个要避免地常见错误。这些计数方法仅提供包含匹配模式的行数——如果那就是您要查找的结果,这没什么问题。但是在行中具有某个特定模式的多个实例的情况下,这些方法无法为您提供实际匹配实例数量 的真实计数。归根结底,若要对实例计数,您还是要使用 wc 来计数。首先,使用 -o 选项(如果您的版本支持它的话)来运行 grep 命令。此选项仅 输出匹配的模式,每行一个模式,而不输出行本身。但是您不能将它与 -c 选项结合使用,因此要使用 wc -l 来对行计数,如以下示例所示:

     清单 18. 好习惯 8 的示例:使用 grep 对模式实例计数

     ~ $ grep -o and tmp/a/longfile.txt | wc -l

     3402

     ~ $

 

下一篇:老手经验谈 介绍UNIX高手的十大习惯[6]

  匹配输出中的某些字段,而不只是对行进行匹配

     当您只希望匹配输出行中特定字段 中的模式时,诸如 awk 等工具要优于 grep。

     下面经过简化的示例演示了如何仅列出 12 月修改过的文件。

     清单 19. 坏习惯 9 的示例:使用 grep 来查找特定字段中的模式

     ~/tmp $ ls -l /tmp/a/b/c | grep Dec

     -rw-r--r-- 7 joe joe 12043 Jan 27 20:36 December_Report.pdf <...[Linux/2007-12/8/015549942.shtml">查看详情]

  影视动画培训   北大BEC培训官方报名网站   2008美国夏令营启航官方指定报名网站   2008留学第一站!  
  北师大 火星时代
共举影视动画培训之鼎
  北大BEC培训官方报名网站
现在报名独享95折!
  2008年国家职业资格考试
一次过关完全备考手册
  2008留学第一站
留学资讯尽在精英留学站!
 
上一篇:老手经验谈 介绍UNIX高手的十大习惯[4]
下一篇:老手经验谈 介绍UNIX高手的十大习惯[6]
 相关新闻
·Linux操作系统上编译程序的方法详细介绍·UbuntuLinux操作系统CVS安装与配置详解
·UbuntuLinux系统屏幕刷新率问题的解决·Linux操作系统上ADSL拨号上网的方法详解
·Linux网卡驱动程序详解·Linux平台Makefile文件的编写基础篇
·Linux实战:分区规划方法详细介绍·利用Openbsd和Openvpn快速建立企业的VPN
·RedHatLinux认证工程师·新手必读:RHCE课堂实验笔记(4)
·菜鸟必读:RHCE课堂学习笔记(2)·新手必读:RHCE课堂实验笔记(3)
·菜鸟必读:RHCE课堂学习笔记(1)·红帽RHCE证书RH302考试
·RHCE认证笔记之三:试验二·RHCE认证笔记之二:试验一
 
◇ 重点栏目导航
◇ 精英服务承诺
教育顾问:010-51660910
QQ交流:138660910
相关资料
·实用技巧:Linux操作系统文件链接问题
·Linux操作系统的内核引导程序详细解析
·实用技巧Linux系统的经典使用技巧八则
·新手必读:RHCE课堂实验笔记(一)
·Linux系统GRUB引导单用户模式三种方式
·Linux系统上把PHP编译进Apache静态内核
·解决方案:Linux邮件系统解决方案
·RedHatEnterpriseLinux4的应用软件
·Linux命令:改变文件或目录的访问权限
·Linux攻略常用的网络安全工具详细介绍
相关试题
·RedFlagLinuxRCE模拟试题(一)
·RedFlagLinuxRCE模拟试题(二)
相关热贴