1

当我在 Windows XP 或 Windows 7 机器上的命令行上运行 SAS 9.2 时,我遇到了这个问题。

它涉及利用 SAS 中的 GRAPH 功能的过程。考虑下面这个简单的程序(称之为'test.sas'):

ods pdf file='c:\test.pdf';
data ds1;
    do x = 1 to 100;
        output;
    end;
run;

proc univariate data=ds1;
    var x;
    histogram; /* causes PROC Graph window to open 
                  when SAS is invoked from command line */
run;

ods pdf close;

当我使用命令行(即 sas -sysin test.sas)运行 sas 并且当 SAS 在 PROC Univariate 步骤中生成直方图时,它会打开一个 PROC GRAPH 窗口,如果我不单击该窗口,它将无法继续。由于我使用 SAS ODS 将输出捕获到 PDF 文档中,因此不需要打开 PROC GRAPH 窗口。另一个缺点是,在我单击 PROC Graph 窗口之前,SAS 执行不会继续。

有没有什么方法可以在命令行上运行该程序而无需 SAS 打开 PROC GRAPH 窗口并在每次请求直方图时等待我的输入?

谢谢。

4

1 回答 1

4

是的,您只需要关闭 LISTING 目的地。添加“ods列表关闭;” 到程序的开头。

于 2012-06-19T18:40:55.577 回答