【问题标题】:Run a batch file for Windows SAS 9.1为 Windows SAS 9.1 运行批处理文件
【发布时间】:2016-08-02 10:24:42
【问题描述】:

我在 Windows Server 2003 标准版上使用 SAS 9.1。我正在尝试以批处理模式运行两个程序。我的 .bat 文件正好包含两行:

Start "D:\PROGRAM FILES\SAS\SAS 9.1" -SYSIN "C:\MyFolder\prog1.sas"
Start "D:\PROGRAM FILES\SAS\SAS 9.1" -SYSIN "C:\MyFolder\prog2.sas"

双击 .bat 文件图标后,出现以下消息:“Windows 找不到 'SYSIN'。确保您输入了正确的名称,然后重试。要搜索文件,请单击开始按钮,然后单击“搜索”。 这怎么可能解决? 谢谢。

【问题讨论】:

    标签: windows batch-file sas


    【解决方案1】:

    通常,您的 SAS 可执行文件会成为该行的一部分 - 而不仅仅是文件夹(这可能不是正确的文件夹,尽管我不记得 9.1 的文件夹结构 - 请从 9.1 升级,这已经结束了十年前)。

    由于您不包含任何带有 .exe(或 .com/etc.)扩展名的内容,Windows 可能会假设您放在那里的文件夹应该是 START 命令的“标题”参数。

    包括 SAS.EXE 的完整路径,包括 SAS.EXE 本身,看看它是否满足您的需求。如果没有,请尝试删除 START,因为这可能会造成混淆。

    有关详细信息,请参阅Batch Processing Under Windows 和Four ways to schedule SAS tasks 下的第一个列表。

    【讨论】:

      【解决方案2】:

      我猜你希望这两个程序并行运行,因为你使用的是START?您需要添加标题作为第二个参数,只需在 START 之后插入“SAS”,如下所示:

      Start "SAS" "D:\PROGRAM FILES\SAS\SAS 9.1" -SYSIN "C:\MyFolder\prog1.sas"
      Start "SAS" "D:\PROGRAM FILES\SAS\SAS 9.1" -SYSIN "C:\MyFolder\prog2.sas"
      

      啊,看乔的回答,你可能还需要将 sas.exe 添加到命令中。

      【讨论】:

        【解决方案3】:

        删除前导“开始”并将“.exe”添加到命令中就足够了:

        "D:\PROGRAM FILES\SAS\SAS 9.1\sas.exe" -SYSIN "C:\MyFolder\prog1.sas"
        "D:\PROGRAM FILES\SAS\SAS 9.1\sas.exe" -SYSIN "C:\MyFolder\prog2.sas"
        

        (感谢所有在这里回答的人以及 SAS 社区的 KurtBremser。)

        【讨论】:

        • 您还在通话中添加了 sas.exe。除非原始问题包含错字。
        • 使用 START 命令也可以让它们并行运行。现在一次只能运行一个 SAS 程序。
        猜你喜欢
        • 1970-01-01
        • 2020-08-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-02-23
        • 1970-01-01
        • 2017-07-12
        相关资源
        最近更新 更多