怎样递归删除一个目录下的很多这样的空文件夹

sh/bash/dash/ksh/zsh等Shell脚本
回复
wind
帖子: 1
注册时间: 2006-02-08 23:39
送出感谢: 0
接收感谢: 0

怎样递归删除一个目录下的很多这样的空文件夹

#1

帖子 wind » 2006-03-18 8:15

怎样递归删除一个目录下的很多下面这样的空文件夹?

[ 704M 50Files - COMPLETE ] - [divxer]


find . -name "[ 704M 50Files - COMPLETE ] - [divxer]" -type d -ok rmdir {} \;

find . -name "[*COMPLETE ] - [divxer]" -type d -exec rmdir --ignore-fail-on-non-empty {} \;
后没有任何提示信息,也没有删除掉


find . -name "*divxer*" -type d -exec rmdir --ignore-fail-on-non-empty {} \;
后提示
find: ./[ 704M 50Files - COMPLETE ] - [divxer]: No such file or directory

[ 704M 50Files - COMPLETE ] - [divxer]:
这个目录删除掉了

我想是不是空格和[这些特殊字符的原因?
头像
alinmn
帖子: 185
注册时间: 2006-05-19 21:42
来自: NIT
送出感谢: 0
接收感谢: 0

#2

帖子 alinmn » 2006-09-15 12:44

好像不是特殊字符的原因(我用其他文件名测试过),估计是find把[ 704M 50Files - COMPLETE ] - [divxer]作为递归查找的路径,但开始查找子文件夹时[ 704M 50Files - COMPLETE ] - [divxer]已被删除(提示错误是find而不是rmdir)。
头像
greco
帖子: 2487
注册时间: 2007-04-06 10:24
来自: ~/Shanghai
送出感谢: 0
接收感谢: 0

#3

帖子 greco » 2007-05-17 11:32

代码: 全选

find -depth -type d -empty -exec rmdir {} \; 
http://silenceisdefeat.com/~greco

代码: 全选

''.join([chr(ord(c)-2) for c in 'O{"G/ockn"ku<"itgeq0ujkBiockn0eqo'])
echo -n "Z3JlY28uc2hpQGdtYWlsLmNvbQ==" | base64 -d
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#4

帖子 eexpress » 2007-05-17 11:41

find -type d -empty -exec rmdir {} \;
修改下就是
● 鸣学
relive
帖子: 39
注册时间: 2007-05-24 14:56
送出感谢: 0
接收感谢: 0

#5

帖子 relive » 2007-08-23 15:56

在方括号前面加\
zzh2711554
帖子: 32
注册时间: 2007-10-09 0:17
来自: 新疆乌鲁木齐
送出感谢: 1 次
接收感谢: 0
联系:

#6

帖子 zzh2711554 » 2007-10-09 23:30

看错题目了。
上次由 zzh2711554 在 2011-01-06 20:14,总共编辑 1 次。
回复

回到 “Shell脚本”