输出以记录SAS中CMD的输出?

时间:2017-10-10 09:49:07

标签: cmd sas checksum

我正在尝试对文件执行校验和,我认为使用X命令是个好主意。

x 'CertUtil -hashfile U:\Programs\test\example.xml MD5';

我已经浏览了整个网络以了解我是否可以将输出打印到SAS日志,甚至更好地打印到ODS PDF,但找不到任何内容。

我确实使用DM语句进行了探索,但我再次不确定是否可以使用CMD。

如何将CMD输出打印到SAS日志?

  

答案后的最终法典

filename fn pipe "CertUtil -hashfile U:\Programs\test\example.xml MD5";

data _NULL_;
infile fn MISSOVER DSD TRUNCOVER;
input 
VAR1 $200. ;
put _infile_;
IF _N_ = 2 THEN CALL SYMPUT("HASH",VAR1);
run;
ods pdf text = "CheckSum for example.xml: &HASH";

1 个答案:

答案 0 :(得分:3)

您可以使用pipe文件名引擎代替x语句:

filename fn pipe `CertUtil -hashfile U:\Programs\test\example.xml MD5';

data _null_;
infile fn;
input;
put _infile_;
run;

在数据步骤中,infile语句执行系统命令,input语句一次读取一行命令的输出,put _infile_语句写入每一行到日志。