例如。
如果我有/ 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")

10-04 11:28
查看更多