删除超过 10 天的文件并将已删除文件的详细信息存储在另一个文件中

删除超过 10 天的文件并将已删除文件的详细信息存储在另一个文件中

我想删除超过 10 天的目录和子目录。

另外,我想将已删除的文件夹和文件名以及时间详细信息存储在另一个文件中。

到目前为止,我的脚本是删除超过 10 天的目录、子目录和文件。

find /tmp/processed/* -type d -ctime +10 -exec rm -rf {} \;

有人可以帮忙将详细信息存储在另一个文件中吗?

提前致谢。

答案1

您可以同时运行多个命令:

find /tmp/processed/* -type d -ctime +10 -print -exec rm -rf {} \;

您可以使用以下信息@Ix07发表于他们的答案

find /tmp/processed/* -type d -ctime +10 -printf "%p %TY-%Tm-%Td %TH:%TM:%TS %TZ\n" -exec rm -rf {} \;

您可以将此输出重定向到文件。
但请注意,查看时,这可能会产生相当混乱(未对齐)的输出。因此,我喜欢将该column命令与格式中的制表符结合使用printf,以“制表”数据:

find /tmp/processed/* -type d -ctime +10 -printf "%p\t%TY-%Tm-%Td\t%TH:%TM:%TS\t%TZ\n" -exec rm -rf {} \; | column -t

我测试了上述输出,它对我来说看起来像这样:

/tmp/processed $ find * -type d -ctime +10 -printf "%p\t%TY-%Tm-%Td\t%TH:%TM:%TS\t%TZ\n" -exec rm -rf {} \; | column -t
bar  2019-02-07  20:35:15.8718172190  WAT
foo  2019-02-07  20:35:54.5638166540  WAT

看着那(这手册页find了解更多信息(提示:在手册页中搜索-printf)。

相关内容