You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将GCP云存储某文件夹内所有文件移动到另一文件夹?

gsutil 移动云存储文件夹全量文件操作方法

gsutil 原生的mv命令就可以完成文件夹内全量文件的移动,不需要单独写脚本遍历文件,具体操作如下:

  • 常规场景移动(覆盖源文件夹下所有非隐藏文件、嵌套子目录及子目录内全部内容)
    加-m参数可以开启多线程并行操作,大幅提升大量文件场景下的移动速度,命令格式:
    # 同存储桶内移动
    gsutil -m mv gs://<源存储桶名>/<源文件夹路径>/* gs://<源存储桶名>/<目标文件夹路径>/
    
    # 跨存储桶移动只需要替换目标路径的桶名即可
    gsutil -m mv gs://<源存储桶名>/<源文件夹路径>/* gs://<目标存储桶名>/<目标文件夹路径>/
    
  • 包含隐藏文件的移动
    上面命令里的通配符*默认不会匹配以.开头的隐藏文件(比如.tmp、.htaccess这类),如果你的源文件夹下有这类文件,补充执行下面的命令即可,gsutil会自动忽略路径下的.和..特殊目录,不会报错:
    gsutil -m mv gs://<源存储桶名>/<源文件夹路径>/.* gs://<目标存储桶名>/<目标文件夹路径>/
    

路径写法注意:如果源路径末尾不带*通配符,比如直接写gs://源桶/源文件夹,执行后会把整个源文件夹本身作为子目录放到目标文件夹下,而不是把源文件夹内的内容平铺到目标目录,写路径的时候要注意区分。

执行移动前建议先做校验,避免路径写错误移动文件:

  1. 先执行ls命令查看通配符匹配到的文件列表,确认和你要移动的范围一致:
    gsutil ls gs://<源存储桶名>/<源文件夹路径>/*
    
  2. 同存储桶、同区域内的移动属于纯元数据操作,速度快且不产生外网流量费用;跨存储桶、跨区域的移动本质是复制完成后删除源文件,会产生对应请求、流量费用。

内容的提问来源于stack exchange,提问作者DISCO

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 14:48:15