【问题标题】:Calling a Batch file using parameters with spaces in the path in SQL Server Agent job在 SQL Server 代理作业的路径中使用带空格的参数调用批处理文件
【发布时间】:2012-11-08 16:56:29
【问题描述】:

我正在 SQL Server 代理作业步骤中从以下位置运行批处理文件:

"D:\Program Files\Cincom\Control\2212\Prd\Dcls\DEV1-MIKE1_RUN_Batch_JOB"

我想传入一个参数来运行一个 IF 语句。但是,当我这样做时:

"D:\Program Files\MyProgram\Dcls\DEV1-MIKE1_RUN_Batch_JOB 1"

我得到'不是内部或外部命令、可运行程序或批处理文件'错误

同样的事情:

"D:\Program Files\MyProgram\Dcls\DEV1-MIKE1_RUN_Batch_JOB '1'"

还有:

"D:\Program Files\MyProgram\Dcls\DEV1-MIKE1_RUN_Batch_JOB "1" "

我需要传递参数并且需要从给定位置运行批处理文件。有什么想法吗?

【问题讨论】:

  • 你能发布批处理文件的内容,或者至少是相关的行,而不是一行的子集吗?
  • @Laf .....对不起,让我说得更清楚一些。我正在从上面键入的 SQL Server 代理作业中调用上述批处理文件...带引号
  • 你试过"D:\Program Files\MyProgram\Dcls\DEV1-MIKE1_RUN_Batch_JOB" 1吗?
  • @Laf .....老兄!太好了……做到了。如果您愿意,请发布您的答案,我会接受。谢谢!

标签: batch-file parameter-passing syntax-error execution


【解决方案1】:

用引号将批处理文件的完整路径括起来,然后为您的批处理文件指定参数:

"D:\Program Files\MyProgram\Dcls\DEV1-MIKE1_RUN_Batch_JOB" 1

【讨论】:

    猜你喜欢
    • 2021-03-31
    • 1970-01-01
    • 2021-08-16
    • 2011-02-01
    • 2014-04-17
    • 2013-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多