批处理文件,命令副本找不到目录

时间:2014-06-05 20:49:48

标签: batch-file copy

我有代码

:instalation1
cls
echo.
echo ==============
echo = III        =
echo ==============
echo.
if %place%==1 (
    md C:\Users\%username%\Desktop\SBI
    set folder=C:\Users\%username%\Desktop\SBI
    ) else (
            md \SBI
        set folder=\SBI
        )
cd %folder%
timeout>nul 2

:instalation 2
cls
echo.
echo ==============
echo = IIIIII     =
echo ==============
echo.
copy \data\SBI.bat %folder%\
timeout>nul 2

但是当我运行它时,命令副本会说"系统无法找到该目录" (文件夹"数据"与批处理文件在同一目录中)

我做错了什么?

2 个答案:

答案 0 :(得分:0)

确保您与正在运行的批处理文件位于同一驱动器上。

如果您在E:驱动器上运行C:\ data \ batchfile或C:\ data在路径上,那么它将从C:运行批处理文件,但工作目录在E:上执行的目的所以E:\ data不存在。作为测试添加对CD的调用,以便在复制之前为您提供当前驱动器。

这只是一个测试,看看你是否在你期望的驱动器上。

:instalation 2
cls
echo.
echo ==============
echo = IIIIII     =
echo ==============
echo.
cd 
copy \data\SBI.bat %folder%\
timeout>nul 2enter code here

答案 1 :(得分:0)

copy \data\SBI.bat %folder%\

使用绝对路径(:\ data \ sbi.bat)。

而是使用相对路径:

copy data\SBI.bat %folder%\

同样要使用cd更改驱动器,请使用

cd /d %folder%