免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3490 | 回复: 7

请问如何用Shell 编: 在当前目录下保留指定日期的文件,其余的全 [复制链接]

论坛徽章:
0
发表于 2002-07-29 10:06 |显示全部楼层
请问如何用Shell 编: 1.在当前目录下保留指定日期的文件,其余的全部删除?
                    
多谢!

论坛徽章:
0
发表于 2002-07-29 10:59 |显示全部楼层

请问如何用Shell 编: 在当前目录下保留指定日期的文件,其余的全

#!/bin/sh
ls -1 |while read line
do
  month=`echo $line|awk '{print $6}'`
  day=`echo $line|awk '{print $7}'
  time=echo $line|awk '{print $8}'
  file=`echo $linr|awk '{print $9}'
  if [ $month="RIGHTMONTH" -a $day="RIGHTDAY" -a $time="RIGHTTIME"
  then
      continue
  else
      rm $filr
  fi
done

RIGHTMON RIGHTDAY RIGHTTIME为你制定的时间.
     rm

论坛徽章:
0
发表于 2002-07-29 12:34 |显示全部楼层

请问如何用Shell 编: 在当前目录下保留指定日期的文件,其余的全

多谢!
但有个问题:
    if [ $month="Jul" -a $day="29"]
         .....
好像不太对,运行完了好像没有正确判断,什么文件也没删除!

论坛徽章:
0
发表于 2002-07-29 14:42 |显示全部楼层

请问如何用Shell 编: 在当前目录下保留指定日期的文件,其余的全

如果echo $LANG = zh
则$month是中文.

论坛徽章:
0
发表于 2002-08-01 16:08 |显示全部楼层

请问如何用Shell 编: 在当前目录下保留指定日期的文件,其余的全

不是,是英文,我用ksh -x 来执行,发现一行如: [May=Jul -a 9=29] 它还是继续执行continue的内容,不是执行else

论坛徽章:
0
发表于 2002-08-02 10:11 |显示全部楼层

请问如何用Shell 编: 在当前目录下保留指定日期的文件,其余的全

if [ $month="Jul" -a $day="29"]改为
if [ $month="Jul" -a $day="29" ]试试看

论坛徽章:
0
发表于 2002-08-08 10:40 |显示全部楼层

请问如何用Shell 编: 在当前目录下保留指定日期的文件,其余的全

成功!
   if [ "$month" = "Jul" -a "$day = "29" ]

论坛徽章:
0
发表于 2002-08-09 10:24 |显示全部楼层

请问如何用Shell 编: 在当前目录下保留指定日期的文件,其余的全

对,shell编程中的() ,[] , {} 前后最好都要空格。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP