手机版
你好,游客 登录 注册 搜索
背景:
阅读新闻

CentOS教程:根据文件名长度输出

[日期:2012-06-24] 来源:Linux社区  作者:linux521 [字体: ]

说明蓝色=命令名称

      浅绿=命令参数

      浅蓝=选项

      紫色=目录

      系统环境:CentOS  6.2  i686

内容如下:

要求a:前面数字相同的输出后面字母最长的一个

方法:awk -F. '{a[$1]=$0}END{for(i in a)print a[i]}' test2

解析:以 . 为分隔符,因为排序是以后面字母由短到长排列,a[$1] 最后就等于最长的一个。

要求b:前面数字相同,后面字母最长的一个不输出,其他全输出。

方法:awk -F. '{a[$1]=$0;b[NR]=$0;if(length(b[NR-1])<length(a[$1])&&NR!=1)print b[NR-1]}' test2

解析: if(length(b[NR-1])<length(a[$1])&&NR!=1) 通过字符长度对比输出短的一个,且NR=1时不输出,否则会多数出一个空行。

linux
相关资讯       CentOS教程 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款