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

不使用os.chdir实现跨盘符指定文件的移动/复制(Windows任务计划)

实现文件移动/复制(无需切换目录)及Windows任务计划配置

Python脚本实现

不用os.chdir()的核心是全程使用绝对路径,结合glob匹配含通配符的文件名,用shutil完成复制/移动操作。

复制文件示例

import glob
import shutil

# 定义绝对路径
target_dir = r"E:\Y"
# 匹配规则:文件名包含ABC,支持通配符(*匹配任意字符,?匹配单个字符)
file_pattern = r"D:\X\*ABC*.*"

# 遍历匹配到的文件
for file_path in glob.glob(file_pattern):
    try:
        # copy2保留文件元数据(创建时间、修改时间等)
        shutil.copy2(file_path, target_dir)
        print(f"已复制文件: {file_path}")
    except Exception as e:
        print(f"复制文件失败 {file_path}: {str(e)}")

移动文件示例

将上述代码中的shutil.copy2替换为shutil.move即可:

import glob
import shutil

target_dir = r"E:\Y"
file_pattern = r"D:\X\*ABC*.*"

for file_path in glob.glob(file_pattern):
    try:
        shutil.move(file_path, target_dir)
        print(f"已移动文件: {file_path}")
    except Exception as e:
        print(f"移动文件失败 {file_path}: {str(e)}")

关键说明

  • 路径前加r表示原始字符串,避免转义字符冲突
  • glob.glob()支持标准通配符:*匹配任意长度字符,?匹配单个字符,[]匹配指定范围字符(如[0-9]匹配数字)
  • 异常处理避免单个文件操作失败导致整个脚本终止

Windows任务计划程序配置步骤

  1. 打开「任务计划程序」,点击右侧「创建任务」
  2. 常规选项卡:
    • 输入任务名称(如「ABC文件自动迁移」)
    • 勾选「不管用户是否登录都要运行」(后台执行需求)
    • 勾选「使用最高权限运行」(避免权限不足导致文件操作失败)
  3. 触发器选项卡:
    • 点击「新建」,设置触发条件(如每天固定时间、登录时、文件夹变化时等)
  4. 操作选项卡:
    • 点击「新建」,操作选择「启动程序」
    • 程序或脚本:填写Python解释器的绝对路径,比如C:\Python310\python.exe(根据本地Python安装路径调整)
    • 添加参数(可选):填写脚本的绝对路径,比如"F:\Z\file_transfer.py"(用引号包裹路径,避免空格问题)
    • 起始于(可选):可留空,也可填写脚本所在目录F:\Z,不影响执行(脚本全程用绝对路径)
  5. 设置选项卡:
    • 按需勾选「任务运行超时停止」「失败重试」等规则
  6. 点击「确定」完成配置,右键任务选择「运行」测试执行效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 17:05:15