我有一些要删除的.tmp文件子文件夹,并试图为此找到一个文件名。
for item in folder1/*/*; do rm *.tmp; done
由此,我收到一堆消息:
rm: cannot remove ‘*.tmp’: No such file or directory
当我尝试执行其他操作时遇到相同的问题。我在这里想念什么?
P.S。我知道我可以使用rm -rf *.tmp
进行不带for循环的递归删除,但是我想知道如何使用迭代循环来进行删除,这样我就可以使用它来执行rm
之外的其他操作替换语句的“操作”部分。
预先感谢
1月
答案 0 :(得分:1)
您可以使用:
find folder1 -mindepth 2 -maxdepth 2 -type f -name "*.tmp" -exec rm -f {} \;
这将仅在第二目录级别(-mindept 2 -maxdepth 2)中找到名称以“ tmp”结尾的文件(-f),并将其删除。
您可以先尝试使用“ ls”而不是“ rm”,以检查命令是否找到了所需的内容。