如何删除文件夹但不删除内容?

如何删除文件夹但不删除内容?

我的目录(在 Linux 中)看起来像com/com/{various,files}wherecomcom是同名文件夹,第二个com包含各种文件。我想删除第一个com,但保留第二个和第二个中的文件。

答案1

将外部目录重命名,将内部目录移动到您想要的名称,然后删除(现在为空)外部目录:

$ mv com to-delete
$ mv to-delete/com com
$ rmdir to-delete

mv com/com/* com如果您没有太多文件并且没有一个是点文件,您也可以删除内部目录,但上面的内容更通用且更有效。

答案2

实现此目的的唯一方法是将“各种文件”向上移动一个级别,然后删除第二个“com”目录。

例子

$ mv com/com/(various files) com/.
$ rmdir com/com

答案3

所以这里你已经拥有了这一切:-

mv com/com/ SOME-TEMPORARY-NAME ; rm -rf com ; mv SOME-TEMPORARY-NAME com

;只是让您一次性运行所有命令。

然后我使用了rm -rf这样的方式,即使你里面有任何其他文件,com/所有文件也会在没有用户交互的情况下被删除。

相关内容