如何将某个子文件夹模式移动到另一个文件夹,使用bash保持结构?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将某个子文件夹模式移动到另一个文件夹,使用bash保持结构?相关的知识,希望对你有一定的参考价值。

我有一组文件夹,如:

/path/to/group1/folder/number123
/path/to/group1/folder/number456
/path/to/group2/folder/number123
/path/to/group2/folder/number456
/path/to/group3/folder/number123
/path/to/group3/folder/number456  

我想将与/path/to/group*/folder/number123匹配的文件夹移动到基本文件夹/path/toOther/,以便在移动后它看起来像:

/path/to/group1/folder/number456
/path/to/group2/folder/number456
/path/to/group3/folder/number456  

/path/toOther/group1/folder/number123
/path/toOther/group2/folder/number123
/path/toOther/group3/folder/number123  

有没有办法用移动命令和外卡执行此操作,还是需要超过1个内线?

答案

如果你不介意写几行:

cd /path/to
for f in group*/folder/number123
do
    d="/path/toOther/${f%/*}"
    mkdir -p "$d"
    mv "$f" "$d/."
done

当然,您可以将脚本合并为一行。 (或者当您使用向上键调用它时,bash会执行此操作。)

以上是关于如何将某个子文件夹模式移动到另一个文件夹,使用bash保持结构?的主要内容,如果未能解决你的问题,请参考以下文章

将特定子文件夹中的文件移动到另一个子文件夹

如何将目录的所有内容(不包括父目录)移动到另一个目录 Groovy [重复]

cmd如何批量移动一个文件夹下面N个子文件夹里的指定格式的文件

如何定位文件中的指定的一个位置(delphi)?

如何使用Vala将文件移动到另一个目录?

使用 IMAP 发送邮件:如何检测邮件已从一个文件夹移动到另一个文件夹?