Chinaunix

标题: 关于rm的一个问题 [打印本页]

作者: 未来高手    时间: 2005-12-16 08:29
标题: 关于rm的一个问题
在一个目录删除文件,*.trc文件一共2700多个,rm时出现这个提示,# rm *.trc
ksh: /usr/bin/rm: 0403-027 The parameter list is too long.
感觉文件数量不多,有没有其他好的方法删除

作者: rain4321    时间: 2005-12-16 09:42
我也遇到过,一直不会;当时是设置再详细一点的通配符分成多次才删除的,有哪位高手指点一下?
作者: groy    时间: 2005-12-16 09:45
我也碰到过这样的问题。没想到好办法。
就写个脚本:
find . -name '*.trc' | awk '{print "rm",$1}' >$$.tmp
sh $$.tmp
rm $$.tmp
作者: hu_nku    时间: 2005-12-16 10:43
find . -name "*.trc"|xargs rm
作者: groy    时间: 2005-12-16 10:48
hu_nku  你自己试试 结果一样的 “ksh: /usr/bin/rm: 0403-027 The parameter list is too long”
不要想当然
作者: hu_nku    时间: 2005-12-16 11:05
我试了,可以阿
作者: groy    时间: 2005-12-16 11:11
唉 你目录下的文件“×××.trc"有2700个么?别拿几个来试,那样肯定没问题的
作者: hu_nku    时间: 2005-12-16 11:13
我生成了3000个 txt 文件,然后,试的
作者: groy    时间: 2005-12-16 11:21
嗯 hu_nku    的方法是对的。
我印象中当时好像是用ls -1|grep trc|xargs rm 然后还是出错,只好写脚本。(是 数字1)
看来我是想当然了 ,在此道歉。

[ 本帖最后由 groy 于 2005-12-16 11:22 编辑 ]
作者: hu_nku    时间: 2005-12-16 11:22
我有我的操作记录,可是怎么才能发附件阿?
呵呵,不好意思,见笑了。
作者: groy    时间: 2005-12-16 11:23
你选择回复主题,不要使用“快速回复主题”这是方便大家使用纯文本回复的
作者: hu_nku    时间: 2005-12-16 11:24
原帖由 groy 于 2005-12-16 11:21 发表
嗯 hu_nku    的方法是对的。
我印象中当时好像是用ls -1|grep trc|xargs rm 然后还是出错,只好写脚本。(是 数字1)
看来我是想当然了 ,在此道歉。


呵呵,不要紧。
作者: lpcome2004    时间: 2005-12-16 14:00
find . -name "xxx" 关键是要有那个双引号。没有的话如果太多匹配会出错0403-027 The parameter list is too long.
作者: 未来高手    时间: 2005-12-16 14:52
测试证明 find . -name "*.trc"|xargs rm 是可以的
作者: 未来高手    时间: 2005-12-16 14:53
xargs还真是个好命令
作者: dyshowgood    时间: 2005-12-16 23:11
不错不错,今天又学了一招!
看了IBM上面的xargs指令说明,到现在还是稀里糊涂的,最后的事例说明有这样一条指令
ls | xargs  -t  -I {} mv {} {}.old
含义就是在当前目录下面在每个名字结尾添加 .old 来重命名在当前目录里的所有文件,其中的几个大括号{}有什么用?指点一下!
作者: atai908    时间: 2005-12-17 12:16
我也遇到过类似问题 当时好象是有4000多个文件 删不掉 所属目录不重要,实在没办法,我把整个目录删了重建 哪位朋友介绍好一点的办法?
作者: 树袋熊    时间: 2005-12-19 06:58
原帖由 hu_nku 于 2005-12-16 11:13 发表
我生成了3000个 txt 文件,然后,试的

牛人 ,3000个,哈哈。
作者: lion_snow    时间: 2012-07-19 23:56
多谢高手分享
作者: 倔强的小牛    时间: 2012-07-20 09:16
此命令怎么解释一下 管道线后面的参数回复 4# hu_nku


   
作者: hai314615910    时间: 2012-07-22 00:02
chgsys修改parameter buffer大小
作者: unixaix123    时间: 2012-07-23 13:49
用 root
#chdev -l sys0 -a ncargs=64
作者: liangzij    时间: 2012-07-23 15:07
不是所有的时候都有root权限的
所以还是find . -name "*.trc"|xargs rm这个办法好,学习了
作者: 好运北京    时间: 2012-07-23 17:12
这么多呀!   
作者: dyllove98    时间: 2012-07-24 10:52
文件多的时候在删除的时候经常碰见这种情况,一遍都是过滤一部分进行删除




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2