¶ find
+
xargs
find a/ -mindepth 1 -maxdepth 1 -print0 | xargs -0 -r mv -t b/
-mindepth 1 -maxdepth 1
:
只打印a
的直接子文件和子目录。
-print0
:
每项用0
也就是null
隔开,而不是以空格或者换行隔开。好处是这样可以支持带特殊字符的文件名和目录名。
xargs -0
:
每项用0
也就是null
隔开。
mv -t
:
第一个是目标,第二个是源。如果不带-t
,那就是第一个是源,第二个是目标。
¶ (不推荐)*
mv a/* b/
缺点:
假如源目录
a
是空的,就会报错,而且没法避免。不能移动
.
开头的文件或者目录。