一、我想删除*.txt以外的文件。
cook@linux-ir2d:~/downloads> rm -rf *.!(txt)
bash: !: event not found
cook@linux-ir2d:~/downloads> rm -rf *.^[txt]
cook@linux-ir2d:~/downloads> rm -rf *.[^t]xt
都不行。应该怎么用SHELL做到?
二、目录下有个vds2目录
cook@linux-ir2d:~/downloads> ls vd??
cook@linux-ir2d:~/downloads> ls vd*
cook@linux-ir2d:~/downloads> ls
b123 conf12.log conf.23.log conf25.log dddv3 gg13f ghtml g.html gssst g.txt gtxtt5 vds2 v.txt
cook@linux-ir2d:~/downloads>
看出问题了吧,为什么? *用不成?
为什么是这样的?请指点
-
- 帖子: 5
- 注册时间: 2012-11-01 10:46
- 系统: opensuse 12.2
- Strange
- 帖子: 1824
- 注册时间: 2006-05-19 9:54
- 来自: Shanghai
Re: 为什么是这样的?请指点
find -not -name "*.txt" -a -type f | xargs rm -f
ls -d vd*
ls -d vd*
ニンニク入れますか?
x60 with gentoo
x60 with gentoo
- mark1991
- 帖子: 218
- 注册时间: 2007-02-12 19:46
Re: 为什么是这样的?请指点
第二个问题,为什么我这里似乎可以用?youwang 写了:一、我想删除*.txt以外的文件。
cook@linux-ir2d:~/downloads> rm -rf *.!(txt)
bash: !: event not found
cook@linux-ir2d:~/downloads> rm -rf *.^[txt]
cook@linux-ir2d:~/downloads> rm -rf *.[^t]xt
都不行。应该怎么用SHELL做到?
二、目录下有个vds2目录
cook@linux-ir2d:~/downloads> ls vd??
cook@linux-ir2d:~/downloads> ls vd*
cook@linux-ir2d:~/downloads> ls
b123 conf12.log conf.23.log conf25.log dddv3 gg13f ghtml g.html gssst g.txt gtxtt5 vds2 v.txt
cook@linux-ir2d:~/downloads>
看出问题了吧,为什么? *用不成?
菜鸟一个,希望大家多多帮助.
Dropbox…
Dropbox…
- 枫叶饭团
- 帖子: 14683
- 注册时间: 2010-06-16 1:05
- 系统: Mac OS X
- 来自: Tencent
- 联系:
Re: 为什么是这样的?请指点
第一个用find,第二个我这没问题