查找当前文件夹下三天以前的文件并删除
重回技术流文章,回家凭空琢磨的,没有验证可能不准.
find . -type f -mtime +3 -exec rm {} \;
查找当前文件夹下三天以前的文件并删除.
find . -type f 查找./下的文件(file).
-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。
-mtime -n +n按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前。find命令还有-atime和-ctime 选项。
使用exec或ok来执行shell命令
在有些操作系统中只允许-exec选项执行诸如l s或ls -l这样的命令。大多数用户使用这一选项是为了查找旧文件并删除它们。
----------------------------
find -exec 的局限就是限于find
于是有个更好的办法:使用xargs
find . -type f -mtime +3 xargs rm
例子:
1 ls $1 xargs -i -t mv $1/{} $2/{}
2 ls xargs -p -l rm -rf
注:
-I ReplaceString(大写 i)。插入标准输入的每一行用 Command 参数的自变量,把它插入出现的每个 ReplaceString 的 Argument 中。
-p询问是否运行 Command 参数。它显示构造的命令行,后跟一个 ?...(问号和省略号)提示。输入肯定的、特定于语言环境的响应以运行
-t启用跟踪方式并在运行之前将构造的 Command 行回送到标准错误。
-L Number用从标准输入读取的非空参数行的指定的数量运行 Command 命令。

2 条评论:
恩,这些shell的东西感觉偏向服务器的维护,你在西门做的东西偏向那个方向的吗?
我在西门做的是移动方面的控制平面的软件的集成测试,平台是rh
发表评论