日期:2014-05-16  浏览次数:20669 次

删除过期文件的shell脚本(linux)
在linux下如何删除过期的文件。
#!/bin/sh
find /home/jms -type f -mtime +2 -exec rm -f {} \;

/home/jms是查找文件的路径。
-type f是指定文件类型为普通文件。
-mtime +2是指修改时间距离现在2天的文件。
       -2是指修改时间距离现在不足2天的文件
-exec rm -f指执行删除匹配出来的文件,并且不提示。

关于find命令,
find pathname -options [-print -exec -ok]
pathname    find命令所查找的目录路径。
-print      find命令将匹配的文件输出到标准输出。
-exec       find命令对匹配的文件执行该参数所给出的shell命令。
-ok 和- exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行.
1. -name   按照文件名查找文件
2. -perm   按照文件权限来查找文件
3. -mtime -n +n   按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。
4. -newer file1  查找更改时间比文件file1新的文件。
5. -type   查找某一类型的文件
  b - 块设备文件。
  d - 目录。
  c - 字符设备文件。
  p - 管道文件。
  l - 符号链接文件。
  f - 普通文件。
6. 使用-size选项 ,按文件的大小查找文件的