linux mv合并目录,合并文件夹与MV?

Python解决方案

由于找不到满意的预先存在的解决方案,因此我决定制作一个快速的Python脚本来实现它。

特别地,该方法是有效的,因为它仅在自下而上时遍历源文件树。

它还将允许您根据自己的喜好快速调整文件覆盖处理之类的内容。

用法:

move-merge-dirs src/ dest/

将移动的所有内容src/*到dest/和src/会消失。

移动合并目录

#!/usr/bin/env python3

import argparse

import os

def move_merge_dirs(source_root, dest_root):

for path, dirs, files in os.walk(source_root, topdown=False):

dest_dir = os.path.join(

dest_root,

os.path.relpath(path, source_root)

)

if not os.path.exists(dest_dir):

os.makedirs(dest_dir)

for filename in files:

os.rename(

os.path.join(path, filename),

os.path.join(dest_dir, filename)

)

for dirname in dirs:

os.rmdir(os.path.join(path, dirname))

os.rmdir(source_root)

if __name__ == '__main__':

parser = argparse.ArgumentParser(

description='Move merge src/* into dest. Overwrite existing files.'

)

parser.add_argument('src_dir')

parser.add_argument('dest_dir')

args = parser.parse_args()

move_merge_dirs(args.src_dir, args.dest_dir)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值