Board logo

标题: [文件操作] (已解决)bat脚本无法移动文件夹 [打印本页]

作者: cbbos    时间: 2024-6-5 14:31     标题: (已解决)bat脚本无法移动文件夹

本帖最后由 cbbos 于 2024-6-5 17:27 编辑

我是要移动脚本目录下的EFI文件夹到B盘根目录
显示拒绝访问,无法移动文件夹
代码如下,大佬看看哪里有问题?
  1. @echo off
  2. REM 获取当前脚本的目录
  3. set "source_dir=%~dp0efi"
  4. REM 设置目标目录
  5. set "target_dir=B:\
  6. REM 检查源目录是否存在
  7. if exist "%source_dir%" (
  8.     REM 确保目标目录存在
  9.     if not exist "%target_dir%" (
  10.         mkdir "%target_dir%"
  11.     )
  12.     REM 移动 efi 文件夹到目标目录
  13.     move "%source_dir%" "%target_dir%"
  14.    
  15.     REM 检查移动是否成功
  16.     if not exist "%source_dir%" (
  17.         echo 成功移动 efi 文件夹到 %target_dir%
  18.     ) else (
  19.         echo 无法移动 efi 文件夹
  20.     )
  21. ) else (
  22.     echo 源目录 %source_dir% 不存在
  23. )
  24. pause
复制代码

作者: aloha20200628    时间: 2024-6-5 15:44

回复 1# cbbos

原因至少有二》其一是运行的批处理脚本所在目录不能是cmd当前目录;其二是目标目录须与源目录同一分区。
查看旧帖 http://bbs.bathome.net/thread-64183-1-1.html

作者: Batcher    时间: 2024-6-5 16:21

回复 1# cbbos


1、move命令不支持跨分区移动文件夹,变通方法:
1) 先复制文件夹,再删除文件夹
2) 用 robocopy 命令

2、B盘是远古时代预留给软盘的盘符,有啥特殊原因要用B盘吗?




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2