linux之mv命令排除某个文件或文件夹
1、https://blog.csdn.net/afsdfq/article/details/106890424?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~aggregatepage~first_rank_ecpm_v1~rank_v31_ecpm-1-106890424.pc_agg_new_rank&utm_term=mv%E6%8E%92%E9%99%A4%E6%96%87%E4%BB%B6&spm=1000.2123.3001.4430
假设目录结构如下:
-
|parent
-
|--child1
-
|--child2
-
|--grandChild1
-
|--grandChild2
-
|--grandChild3
-
|--grandChild4
-
|--grandChild5
-
|--grandChild6
现在要改为:
-
|parent
-
|--child1
-
| |--grandChild1
-
| |--grandChild2
-
| |--grandChild3
-
| |--grandChild4
-
| |--grandChild5
-
| |--grandChild6
-
|--child2
需要将除了child1、child2目录的其他文件移动到目录child1下。
使用下面的命令即可实现:
mv !(child1|child2) child1
若遇到
-bash: !: event not
错误,请执行
shopt -s extglob
表示扩展模式匹配操作符,就可以使用更多的通配符。
2、
# mv !(a|back) back