Chinaunix首页 | 论坛 | 博客
  • 博客访问: 610595
  • 博文数量: 244
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 130
  • 用 户 组: 普通用户
  • 注册时间: 2016-06-27 09:53
个人简介

记录学习,记录成长

文章分类

全部博文(244)

我的朋友

分类: LINUX

2016-08-26 15:58:51

题目:
假设有一个文件test.txt,它的每一行用空格分开成为4个字段,其中第二个字段表示日期,格式为yyyy-mm-dd,找出时间在2010-11-08到2010-12-20闭区间内的数据行,且只打印第1字段和第3字段;

文本内容:
[root@bogon ~]# cat test.txt 
1 2009-10-11 11 111
2 2010-11-09 22 222
3 2010-11-22 33 333
4 2010-12-21 44 444
5 2016-08-23 55 555


脚本内容:
[root@bogon ~]# cat test.sh 
for i in `awk '{print $2}' /root/test.txt`
do
  if [ "$i" \> "2010-11-08" ] && [ "$i" \< "2010-12-20" ];then
    cat  /root/test.txt | grep $i | cut -d' ' -f 1,3
  fi
done


执行结果:
[root@bogon ~]# bash test.sh 
2 22
3 33
阅读(2575) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~