我想知道如何使用命令行将所有文件从文件夹A移至文件夹A的子文件夹,除了.html文件。
假设我在dist文件夹中,有50个文件和5个文件夹。现在,我想将所有50个文件和4个文件夹移动到dist文件夹中的子文件夹之一,而不必写下所有文件的名称。
当前目录:
$ ls -F
1 12 15 18 20 23 26 29 31 34 37 4 42 45 48 50 8 b.html foldera/ folderd/
10 13 16 19 21 24 27 3 32 35 38 40 43 46 49 6 9 c.html folderb/ foldere/
11 14 17 2 22 25 28 30 33 36 39 41 44 47 5 7 a.html d.html folderc/ moveHere/
临时启用shell extglob并禁用历史记录替换:
$ shopt -s extglob; set +H
要将所有内容移动到名为“ moveHere”的目录(不包括html文件),请执行以下操作:
$ mv !(*.html|moveHere) moveHere/
移动文件后的当前目录:
$ ls
a.html b.html c.html d.html moveHere
检查新目录:
$ ls moveHere/
1 12 15 18 20 23 26 29 31 34 37 4 42 45 48 50 8 folderb foldere
10 13 16 19 21 24 27 3 32 35 38 40 43 46 49 6 9 folderc
11 14 17 2 22 25 28 30 33 36 39 41 44 47 5 7 foldera folderd
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句