我想删除文件夹的内容但不删除文件夹:所有文件和所有带有子文件的子文件夹。这不会删除任何内容
sudo rm -rf /folder1/*
为什么不可以?如何让它工作?
答案1
这folder1
真的是直接在 root 中吗/
?您必须使用相对或绝对路径:
sudo rm -rf folder1/*
sudo rm -rf /full/path/to/folder1/*
那么你必须记住,通配符是处理前 sudo
。如果用户无权读取 的内容folder1
,则通配符将不返回任何内容。您可以使用以下代码进行测试
sudo echo folder1/*
在这种情况下,你可以
sudo bash
rm -rf folder1/*
答案2
你说的是 sudo“rm -rf /文件夹1/*”不适合您如果目录中有数千个文件,则会发生这种情况,要么处理时间太长,要么会说参数列表太长在这种情况下您可以尝试以下命令
首先进入要删除文件的目录cd /文件夹/
/bin/ls -A | xargs rm -rf
这将删除所有文件和目录,甚至包括以点开头的隐藏文件和目录,但特殊的 . 和 .. 目录除外。您不想删除 . 和 ..(它们分别是当前目录和父目录)。