将输入参数连接为变量以在批处理文件中使用

时间:2011-05-13 19:07:23

标签: windows batch-file

命令行参数可以通过批处理文件提供和读取,也可以在批处理文件中进行硬编码

Set Target_computer = %1
REM  Get Source URL
Set SOURCE_URL = %2
REM Set Source Directory
SET SOURCE_DIR = \reference_data_update

并在bat文件执行时显示。但是,当其中两个连接时

xcopy %SOURCE_URL%%SOURCE_DIR% d:\dqxi\11_7\reference_data /Y/H/S/R

他们没有被阅读。该命令回显为

xcopy    d:\dqxi\11_7\reference_data /Y/H/S/R

如何让这些变量在批处理文件中工作以执行我需要bat文件执行的工作(xcopy从源服务器的reference_data_update目录到目标服务器的reference_data目录)?

2 个答案:

答案 0 :(得分:5)

尝试删除空格(在set命令附近)

@echo off
Set Target_computer=%1
REM  Get Source URL
Set SOURCE_URL=%2
REM Set Source Directory
SET SOURCE_DIR=\reference_data_update
::and display when bat file executes. However, when two of them are concatenated

echo %SOURCE_URL%%SOURCE_DIR% d:\dqxi\11_7\reference_data /Y/H/S/R

答案 1 :(得分:1)

在SET语句中删除等号之前和之后的空格。