Download 从web下载zip文件,解压缩并使用sas导入数据集

Download 从web下载zip文件,解压缩并使用sas导入数据集,download,sas,unzip,Download,Sas,Unzip,我想从web下载一个zip文件,解压缩并将该文件导入sas数据集以供进一步使用 对于解压缩,我使用下面的sas代码。。但结果是没有错误的 data _null_; x "cd C:\Program Files\7-Zip "; X "7z.exe e C:\Users\Ravinder\Downloads\Compressed\*.zip -o C:\sasdata\New"; run; 请帮我做同样的事情 ravinder kumar您是否尝试过从命令提示符运行命令?它起作用了吗?我建议像这

我想从web下载一个zip文件,解压缩并将该文件导入sas数据集以供进一步使用

对于解压缩,我使用下面的sas代码。。但结果是没有错误的

data _null_;
x "cd C:\Program Files\7-Zip ";
X "7z.exe e C:\Users\Ravinder\Downloads\Compressed\*.zip -o C:\sasdata\New";
run;
请帮我做同样的事情


ravinder kumar

您是否尝试过从命令提示符运行命令?它起作用了吗?我建议像这样运行命令,而不是先更改文件夹:

"C:\Program Files\7-Zip\7z.exe" e C:\Users\Ravinder\Downloads\Compressed\*.zip -o C:\sasdata\New
从SAS运行上述命令时,请使用单引号作为命令的字符串分隔符,如下所示:

data _null_;
  X '"C:\Program Files\7-Zip\7z.exe" e C:\Users\Ravinder\Downloads\Compressed\*.zip -o C:\sasdata\New';
run;
如果IMO仍不能按照SAS的预期工作,那么调试IMO的最简单方法是将命令放入批处理文件(.bat)中,然后在文件末尾放一行,简单地说是
暂停
。“暂停”命令将告诉windows在关闭批处理文件窗口之前保持其打开状态。该窗口将为您提供运行命令时发生的情况的完整可见性。尝试从SAS运行批处理文件,而不是直接运行命令

请注意,如果希望SAS在SAS程序继续处理之前等待解压完成,则可能还需要指定以下SAS选项:

选择xsync


noxwait
告诉SAS在命令运行后自动关闭命令窗口,
xsync
告诉SAS在继续处理之前等待命令完成运行。请注意,有时在提取文件时,该命令可以完成,但由于网络复制和/或缓存,该文件仍不存在于磁盘上。如果您想绝对确定,您可能应该检查文件是否存在,并/或让sas在一定时间内
sleep()

这是我的问题解决方案。。文件下载到c:\sasdata位置

data _null_;
x "cd c:\sasdata";
x "curl -A 'Mozilla/4.0' -O http://nseindia.com/content/indices/histdata/CNX%20NIFTY&FRNAME-&FRNAME..csv";
run;

您没有提供足够的信息来帮助您,老实说,这在任何情况下都不像是编程问题。你的SAS代码很好。您可能对7z和/或下载有问题。@Joe不确定我是否同意-海报希望通过SAS以编程方式完成此任务。虽然SAS可能不是这项工作的最佳工具,但在我看来,它仍然是一个编程问题。@Robbenridge这里的问题是SAS代码没有错误;这很可能与7zip调用和/或文件下载有关(后者可能与SAS有关,但没有任何证据)。无论如何,由于缺乏信息,该问题目前的形式无法回答。