免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3142 | 回复: 8
打印 上一主题 下一主题

[SCO UNIX] 请教:定期删除文件 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-04-14 08:52 |只看该作者 |倒序浏览
在一文件夹内,有按照日期备份的10个文件,如/tmp 目录下的backup0102.tar、backup0103.tar、backup0104.tar........,且每天会新增一个文件。
现在请教各位,如何实现shell脚本,每天定时删除时间最早的一个文件?

论坛徽章:
0
2 [报告]
发表于 2010-04-14 10:54 |只看该作者
ls -tr /tmp/backup*.tar | sed -n '1p'  | xargs rm

论坛徽章:
0
3 [报告]
发表于 2010-04-14 17:07 |只看该作者
提到编程就是sun兄的强项啦,呵呵!

论坛徽章:
0
4 [报告]
发表于 2010-04-14 17:35 |只看该作者
楼上过讲了,我不过是每样都会点,但都说不上精。

前面的办法在正常情况下用crontab定时执行不会有问题,但如果一天里多次执行就会把备份全删光。刚才想了下,更好的解决办法应该是通过find命令来实现。

find /tmp -name "backup*.tar" -ctime +10 -exec rm {} \;

论坛徽章:
0
5 [报告]
发表于 2010-04-14 20:30 |只看该作者
本帖最后由 crazy221998 于 2010-04-14 20:33 编辑

非常感谢sunlan版主!
不过
请教一下,用这个命令是否可以?
find /tmp -type f -mtime +5 -exec rm {} \;

此外,find的参数-mtime与-ctime有何区别?

论坛徽章:
0
6 [报告]
发表于 2010-04-15 09:24 |只看该作者
回复 5# crazy221998


    这个命令也是可以的。两者的区别:
-ctime  n
    The primary shall evaluate as true if the time of last change of file status information subtracted from the initialization time, divided by 86400 (with any remainder discarded), is n.
-mtime  n
    The primary shall evaluate as true if the file modification time subtracted from the initialization time, divided by 86400 (with any remainder discarded), is n.

论坛徽章:
0
7 [报告]
发表于 2010-04-15 14:26 |只看该作者
change和modification的差别?我都不清楚二者有何具体的差别,汗{:2_175:}

论坛徽章:
0
8 [报告]
发表于 2010-04-15 15:36 |只看该作者
说实在我也有点泛晕。下面是我找到的说明,不一定完全正确

文件的 Access time,atime 是在读取文件或者执行文件时更改的。
文件的 Modified time,mtime 是在写入文件时随文件内容的更改而更改的。
文件的 Change time,ctime 是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改的。

因此,更改文件的内容即会更改 mtime 和 ctime,但是文件的 ctime 可能会在 mtime 未发生任何变化时更改 - 在权限更改,但是文件内容没有变化的情况下。
ls(1) 命令可用来列出文件的 atime、ctime 和 mtime。
ls -lc filename         列出文件的 ctime
ls -lu filename         列出文件的 atime
ls -l filename          列出文件的 mtime

论坛徽章:
0
9 [报告]
发表于 2010-04-15 16:24 |只看该作者
呵呵
看来我提了一个引发大讨论的问题
值得
并希望所有知道的、不知道的坛友都来讨论学习下
觉得SCO板块都有些沉闷了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP