gpt4 book ai didi

linux - 使用 find 命令删除目录集,而不会遇到参数列表太长的情况

转载 作者:太空宇宙 更新时间:2023-11-04 04:32:46 24 4
gpt4 key购买 nike

我的情况是/tmp 目录中至少有 25,000 - 50,000 个目录。我正在尝试使用以下命令删除该目录中超过 2 天的目录。

find /path/to/tmp/* -type d -ctime +2 -delete

但是我一直遇到参数列表太长的错误。如何具体限制删除目录的数量?我也尝试使用 maxdepth 1 选项,但这似乎不起作用。

最佳答案

* glob 使 shell 展开所有目录名称并将它们传递给 find。摆脱它,让 find 来完成工作,而不是 shell。

find /path/to/tmp/ -mindepth 1 -type d -ctime +2 -delete

-mindepth 1 确保 find 仅处理子目录,而不处理 /path/to/tmp 本身。

如果这些目录不为空,您需要将 -delete 切换为 rm -r

find /path/to/tmp/ -mindepth 1 -type d -ctime +2 -exec rm -r {} +

关于linux - 使用 find 命令删除目录集,而不会遇到参数列表太长的情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49808596/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com