linux里面删除n天前文件的问题。
答案:5 悬赏:0
解决时间 2021-02-18 22:24
- 提问者网友:紫柔同归
- 2021-02-18 07:58
linux里面,一个目录A里面有 B , B1,B2,B3 四个目录。B目录里面又包含B1,B2,B3的一个备份(名字也是B1,B2,B3)。现在写shell,删除A目录里面的n天前的文件,保留B目录。由于B包含了B1,B2,B3,用find命令查找时会找到B里面的东西而无法正确删除。求高手解答!万分感谢!还有find命令如何在当前目录下查找而不去子目录查找!
最佳答案
- 二级知识专家网友:输掉的尊严
- 2021-02-18 08:18
这么一个简单的动作不用写脚本了,用find就行,除非你有N多个A目录这种状况的需求。我用的是RedHat6平台,bash执行环境,GNU版本指令,在当前A目录下执行。具体的会略有差异,请谨慎参考:
find . -path "./B" -prune -o -mtime "+5" -type "f" -exec rm -f {} \;双引号的内容分别为你排除的目录、多少天前以及资料类型。上面的代码已包括了第二个问题。
find . -path "./B" -prune -o -mtime "+5" -type "f" -exec rm -f {} \;双引号的内容分别为你排除的目录、多少天前以及资料类型。上面的代码已包括了第二个问题。
全部回答
- 1楼网友:余生继续浪
- 2021-02-18 11:09
你好!
find ./B?/* -type f -mtime +7 -exec rm -f {} /
? 表示一位字符
如有疑问,请追问。
- 2楼网友:开心就好
- 2021-02-18 10:10
find命令如何在当前目录下查找而不去子目录查找
find . ! -name "." -type d -prune -o -type f -name "*.txt" -print(查找当前目录下txt结尾的文件)
- 3楼网友:狙击你的心
- 2021-02-18 09:37
加 -f 强制删除
- 4楼网友:冷眼_看世界
- 2021-02-18 08:55
find ./ -ctime +n -exec rm -rf {} \
n就是天数
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯