在我的Raspberry Pi中,有很多jpg
个文件。我想删除jpg
以外的所有1.jpg
个文件。我怎么能在shell脚本中做到这一点?
答案 0 :(得分:3)
您可以使用find,例如
find . -name \*.jpg \! -name 1.jpg -exec rm {} \;
但是要非常小心,如果你弄错了,你可以很容易地删除很多文件。首先进行“干运行”以检查将删除哪些文件,例如
find . -name \*.jpg \! -name 1.jpg -exec echo "rm {}" \;
答案 1 :(得分:1)
您可以使用extended glob pattern进行否定(需要Bash):
$ shopt -s extglob
$ ls
1.jpg 2.jpg name.jpg
$ ls !(1).jpg
2.jpg name.jpg
$ rm !(1).jpg
$ ls
1.jpg