技术解析

想删除特定目录下的特定名称的目录,终端命令该怎么写?
0
2021-07-15 10:49:23
idczone
比如,我想

删除“mnt/2TB/”目录及其子目录下所有名为“@123Abc”的文件夹

终端命令该怎么写?

如果目标是特定文件名的文件,命令会不会有所不同?

谢谢各位
楼主是不是应该整理一下你的问题?
“mnt/2TB/” 都被删除了,下面哪里还有名为 “@123Abc” 的子目录。

cd 到该目录中
find . -type d -name "@123Abc" | xargs rm -rf


我不认为需要整理。
“~的”之前的部分,是最后一个词“文件夹”的描述。
提取句子主干结果是“删除文件夹”,删除什么文件夹呢?
““mnt/2TB/”目录及其子目录下所有名为“@123Abc”的”文件夹。
也许下面的描述方法是你所能读懂的。
要删除的目录名 = “@123Abc”
要删除的目录随机分布于“mnt/2TB/”目录及其子目录中。

楼主写的的确不科学呢。
2楼正解。不过“@”需不需要转义啊?


谢谢,不过你的这个命令执行后输出:
xargs: argument line too long
目标没有被删除。
我用你的命令Google出另一条接近的:
find . -name "@eaDir" -exec rm -rf "{}" \;
在我这里效果良好。


确实在前面断句会读出母目录被删除的感觉。
@就是文件夹名的一部分,无需转义


哈,这是我以前用来删 .svn 目录的命令。。。
现在用 git 了,暂时没有这样的需求了

断句有歧义罢了。
删除“mnt/2TB/”目录 及其子目录下所有……
删除“mnt/2TB/”目录及其子目录下 所有……

另外真的是 xargs 参数过长而不是 exec 过长么……


>真的是 xargs 参数过长而不是 exec 过长么?
看起来是的。
http://i.share.pho.to/747b9b6e_o.png
exec删除成功,输出大量信息,我就不截图了。

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服