我想从sas使用7zip命令行。我确认这些命令可以在命令行中运行,但我不能让它在sas程序中工作。我认为这与在SAS中设置unix路径有关。有谁知道我怎么能做到这一点?
data _null_;
length command1 command2 $1000;
command1 = 'set PATH=%PATH%;C:\Program Files\7-zip\';
command2 = '7z x "\\mypath\zip.zip" -pmypassword -y -o"\\mypath"';
call system(command1);
call system(command2);
run;
答案 0 :(得分:1)
我一直都在使用它。这是一个从我的工作文件夹中压缩文件并为zip添加密码的示例。 Windows的例子很明显。如果在企业环境中运行,您可能希望确保您有权从SAS中执行shell命令(例如%sysexec
)。
%sysexec "C:\Program Files\7-Zip\7z.exe" a -y -pMyPassword %sysfunc(pathname(work))\DestinationFilename.zip %sysfunc(pathname(work))\SourceFilename.csv;