免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3221 | 回复: 10
打印 上一主题 下一主题

[系统安装] 关于find后不能删除 [复制链接]

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-24 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-10-12 10:16 |只看该作者 |倒序浏览
[root@localhost ~]# find /home -name "quota*" -ok rm -i {} \;
< rm ... /home/quota5 > ? n
< rm ... /home/quota3 > ? n
< rm ... /home/quota3/quotatest3 > ? y
rm: remove regular file `/home/quota3/quotatest3'? < rm ... /home/quota2 > ? y
rm: cannot remove `/home/quota2': Is a directory
< rm ... /home/quota2/quotatest > ? y
rm: remove regular file `/home/quota2/quotatest'? < rm ... /home/quota1 > ? y
rm: cannot remove `/home/quota1': Is a directory
< rm ... /home/quota1/quotatest > ? y
rm: remove regular file `/home/quota1/quotatest'? < rm ... /home/quota4 > ? y
rm: cannot remove `/home/quota4': Is a directory
< rm ... /home/quota4/quotatest4 > ? y
rm: remove regular file `/home/quota4/quotatest4'? [root@localhost ~]# y
-bash: y: command not found
[root@localhost ~]# find /home -name "quota*"
/home/quota5
/home/quota3
/home/quota3/quotatest3
/home/quota2
/home/quota2/quotatest
/home/quota1
/home/quota1/quotatest


使用命令 find /home -name "quota*" -ok rm -i {} \; 后,虽然有部分指令输入有误,但也有正确的。本意是想删除所有的quotatest文件,quota目录不删除。可是运行后发现,所有文件都没有被删除,求解释。下面是二次运行的结果

[root@localhost ~]# find /home -name "quota*" -ok rm -i {} \;
< rm ... /home/quota5 > ? n
< rm ... /home/quota3 > ? n
< rm ... /home/quota3/quotatest3 > ? y
rm: remove regular file `/home/quota3/quotatest3'? < rm ... /home/quota2 > ? y
rm: cannot remove `/home/quota2': Is a directory
< rm ... /home/quota2/quotatest > ? y
rm: remove regular file `/home/quota2/quotatest'? < rm ... /home/quota1 > ? n
< rm ... /home/quota1/quotatest > ? y
rm: remove regular file `/home/quota1/quotatest'? < rm ... /home/quota4 > ? n
< rm ... /home/quota4/quotatest4 > ? y
rm: remove regular file `/home/quota4/quotatest4'? [root@localhost ~]#
[root@localhost ~]# find /home -name "quota*"
/home/quota5
/home/quota3
/home/quota3/quotatest3
/home/quota2
/home/quota2/quotatest
/home/quota1
/home/quota1/quotatest
/home/quota4
/home/quota4/quotatest4



论坛徽章:
28
15-16赛季CBA联赛之八一
日期:2016-02-22 19:10:4215-16赛季CBA联赛之深圳
日期:2016-12-01 10:34:0415-16赛季CBA联赛之新疆
日期:2016-12-07 10:24:2915-16赛季CBA联赛之同曦
日期:2016-12-15 12:06:43CU十四周年纪念徽章
日期:2016-12-18 13:03:4415-16赛季CBA联赛之吉林
日期:2017-01-03 15:52:2515-16赛季CBA联赛之辽宁
日期:2017-01-04 14:58:2415-16赛季CBA联赛之辽宁
日期:2017-01-15 09:42:512016科比退役纪念章
日期:2017-02-06 17:21:50黑曼巴
日期:2017-02-10 15:46:1215-16赛季CBA联赛之上海
日期:2017-03-18 10:14:5415-16赛季CBA联赛之青岛
日期:2017-03-18 22:00:44
2 [报告]
发表于 2016-10-12 16:16 |只看该作者

rm 不加-r参数 只是删除文件
而find出来是含有目录的

find /home -type f -name "quota*" -ok rm -i {} \;

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-24 06:20:00
3 [报告]
发表于 2016-10-13 09:34 |只看该作者
回复 2# moperyblue

quotatest都是文件,不是目录。

论坛徽章:
28
15-16赛季CBA联赛之八一
日期:2016-02-22 19:10:4215-16赛季CBA联赛之深圳
日期:2016-12-01 10:34:0415-16赛季CBA联赛之新疆
日期:2016-12-07 10:24:2915-16赛季CBA联赛之同曦
日期:2016-12-15 12:06:43CU十四周年纪念徽章
日期:2016-12-18 13:03:4415-16赛季CBA联赛之吉林
日期:2017-01-03 15:52:2515-16赛季CBA联赛之辽宁
日期:2017-01-04 14:58:2415-16赛季CBA联赛之辽宁
日期:2017-01-15 09:42:512016科比退役纪念章
日期:2017-02-06 17:21:50黑曼巴
日期:2017-02-10 15:46:1215-16赛季CBA联赛之上海
日期:2017-03-18 10:14:5415-16赛季CBA联赛之青岛
日期:2017-03-18 22:00:44
4 [报告]
发表于 2016-10-13 09:39 |只看该作者
回复 3# calflyok

-type f 就是只过滤出文件
命令你有试过吗?是什么情况?

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-24 06:20:00
5 [报告]
发表于 2016-10-13 09:52 |只看该作者
回复 2# moperyblue

[root@localhost ~]# find /home -type f -name "quota*" -ok rm -i {} \;
< rm ... /home/quota3/quotatest3 > ? y
rm: remove regular file `/home/quota3/quotatest3'? < rm ... /home/quota1/quotatest > ? y
rm: remove regular file `/home/quota1/quotatest'? < rm ... /home/quota4/quotatest4 > ? y
rm: remove regular file `/home/quota4/quotatest4'? [root@localhost ~]#
[root@localhost ~]# find /home -type f -name "quota*"
/home/quota3/quotatest3
/home/quota1/quotatest
/home/quota4/quotatest4



还是不行,呵呵

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-24 06:20:00
6 [报告]
发表于 2016-10-13 09:53 |只看该作者
回复 2# moperyblue

[root@localhost ~]# find /home -type f -name "quota*" -exec rm -i {} \;
rm: remove regular file `/home/quota3/quotatest3'? y
rm: remove regular file `/home/quota1/quotatest'? y
rm: remove regular file `/home/quota4/quotatest4'? y
[root@localhost ~]# find /home -type f -name "quota*"
[root@localhost ~]#



这样却可以,why?不是说-exec和-ok一样吗?

论坛徽章:
28
15-16赛季CBA联赛之八一
日期:2016-02-22 19:10:4215-16赛季CBA联赛之深圳
日期:2016-12-01 10:34:0415-16赛季CBA联赛之新疆
日期:2016-12-07 10:24:2915-16赛季CBA联赛之同曦
日期:2016-12-15 12:06:43CU十四周年纪念徽章
日期:2016-12-18 13:03:4415-16赛季CBA联赛之吉林
日期:2017-01-03 15:52:2515-16赛季CBA联赛之辽宁
日期:2017-01-04 14:58:2415-16赛季CBA联赛之辽宁
日期:2017-01-15 09:42:512016科比退役纪念章
日期:2017-02-06 17:21:50黑曼巴
日期:2017-02-10 15:46:1215-16赛季CBA联赛之上海
日期:2017-03-18 10:14:5415-16赛季CBA联赛之青岛
日期:2017-03-18 22:00:44
7 [报告]
发表于 2016-10-13 10:22 |只看该作者
回复 6# calflyok


find /home -type f -name "quota*"  -ok rm {} \;

find /home -type f -name "quota*" -exec rm -i {} \;


-ok与rm命令中的 -i参数重复的原因 两个都有让用户确认的意思

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-24 06:20:00
8 [报告]
发表于 2016-10-13 11:30 |只看该作者
回复 7# moperyblue

我再试试不带i

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-04-24 06:20:00
9 [报告]
发表于 2016-10-13 11:33 |只看该作者
回复 7# moperyblue

[root@localhost home]# cd quota3
[root@localhost quota3]# touch quotatest
[root@localhost quota3]# cd ~
[root@localhost ~]# find /home -type f -name "quota*"
/home/quota3/quotatest
[root@localhost ~]# find /home -type f -name "quota*" -ok rm {} \;
< rm ... /home/quota3/quotatest > ? y
[root@localhost ~]# find /home -type f -name "quota*"
[root@localhost ~]#


还真是因为带了i的原因。

论坛徽章:
28
15-16赛季CBA联赛之八一
日期:2016-02-22 19:10:4215-16赛季CBA联赛之深圳
日期:2016-12-01 10:34:0415-16赛季CBA联赛之新疆
日期:2016-12-07 10:24:2915-16赛季CBA联赛之同曦
日期:2016-12-15 12:06:43CU十四周年纪念徽章
日期:2016-12-18 13:03:4415-16赛季CBA联赛之吉林
日期:2017-01-03 15:52:2515-16赛季CBA联赛之辽宁
日期:2017-01-04 14:58:2415-16赛季CBA联赛之辽宁
日期:2017-01-15 09:42:512016科比退役纪念章
日期:2017-02-06 17:21:50黑曼巴
日期:2017-02-10 15:46:1215-16赛季CBA联赛之上海
日期:2017-03-18 10:14:5415-16赛季CBA联赛之青岛
日期:2017-03-18 22:00:44
10 [报告]
发表于 2016-10-13 11:34 |只看该作者
回复 8# calflyok


或者
  1. find /home -type f -name "quota*"|xargs rm -rf
复制代码

如果要删除的文件确定无误的话
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP