基于以下大量研究,我提出了
find /Some_Dir -type f -mtime +30 -delete -printf "%TD %p\n" >> /Logfile.txt 2>&1
这样做很好地删除了文件,并且还删除了带空格的文件。我担心的一个问题是,这是删除仅准备就绪的文件,甚至是具有000权限的文件。这是预期的结果吗?
答案 0 :(得分:0)
是。您没有修改文件,而是在修改包含目录。
要禁止删除文件,您需要拒绝对目录的写访问权,或者在目录上设置粘滞位(更准确但更少地称为“限制删除标记”),并确保用户尝试删除该文件不拥有该文件或目录。像/tmp
这样的全局可写目录通常会打开粘滞位。
如果您只想更改find
命令的行为,请使用-writable
或-perm
。