例如。
如果我有/ tmp目录,其中包含/ test1,/ test2,/ test3等。
我必须将此/ test *目录移动到/ tmp2目录。
之后,我必须在/ tmp3目录中创建一个相同名称的目录。
所以在/ tmp
--- / test1,/ test2,/ test3等
使用mv / test * / tmp2
将所有以test开头的目录移动到tmp2
但在/ tmp3,我必须创建tmp2中的所有目录..而不是其中的文件或目录..而是目录的名称
最后应该有
/ tmp2-/ test1 / test2 / test3 ....
/ tmp3-/ test1 / test2 / tets3。
最佳答案
使用find
:
while read -r dir
do
mv "/tmp/$dir" /tmp2
mkdir "/tmp3/$dir"
done < <(find /tmp/test* -maxdepth 0 -type d -printf "%f\n")