linux删除录下的所有文件仅仅保留一个指定文件
方法一:find[root@oldboy xx]# lsfile1 file10 file2 file3 file4 file5 file6 file7 file8 file9[root@oldboy xx]# find /xx -type f ! -name "file10"|xargs rm -f [root@oldboy xx]# ls
·
方法一:
find
[root@oldboy xx]
# ls
file1 file10 file2 file3 file4 file5 file6 file7 file8 file9
[root@oldboy xx]
# find /xx -type f ! -name "file10"|xargs rm -f
[root@oldboy xx]
# ls
file10
[root@oldboy xx]
# find /xx -type f ! -name "file10" -exec rm -f {} \;
[root@oldboy xx]
# ls
file10
方法二:
rsync
[root@oldboy xx]
# ls
file1 file10 file2 file3 file4 file5 file6 file7 file8 file9
[root@oldboy xx]
# rsync -az --delete --exclude "file10" /null/ /xx/
[root@oldboy xx]
# ls
file10
方法三:开启
bash
的extglob功能(此功能的作用就是用
rm
!(*jpg)这样的方式来删除不包括号内文件的文件)
[root@oldboy xx]
# shopt -s extglob
[root@oldboy xx]
# ls
file1 file10 file2 file3 file4 file5 file6 file7 file8 file9
[root@oldboy xx]
# rm -f !(file10)
[root@oldboy xx]
# ls
file10
方法四:
find
./ -
type
f|
grep
-
v
"\boldboy1\b"
|
xargs
rm
-f
方法五:
rm
-f `
ls
|
grep
-
v
"\boldboy1\b"
`
更多推荐
已为社区贡献1条内容
所有评论(0)