SAS:PROC导入文件名SFTP fileref

SAS:PROC导入文件名SFTP fileref,sas,Sas,在SAS(9.4,如果有关系的话)中,我希望通过SFTP从远程主机获取CSV文件,解析CSV,并将结果放入SAS数据表中 我使用PuTTY设置了SFTP,如SAS文档中所述。将fileref绑定到SFTP可以正常工作,类似于: FILENAME mysftpfileref SFTP 'location/on/host/file.csv' HOST='myhost' USER='mysuser'; DATA _null_; INFILE mysftpfileref TRUNCOVER;

在SAS(9.4,如果有关系的话)中,我希望通过SFTP从远程主机获取CSV文件,解析CSV,并将结果放入SAS数据表中

我使用PuTTY设置了SFTP,如SAS文档中所述。将fileref绑定到SFTP可以正常工作,类似于:

FILENAME mysftpfileref SFTP 'location/on/host/file.csv' HOST='myhost' USER='mysuser';
DATA _null_;
    INFILE mysftpfileref TRUNCOVER;
    INPUT a $25.;
RUN;
将成功读取数据

然而,我似乎不知道如何使用
PROC IMPORT
来实际解析数据。该进程状态的文档

“导入过程不支持设备类型或访问方法 用于除磁盘之外的FILENAME语句。例如,导入 过程不支持临时设备类型,这会创建 临时外部文件。“

有解决办法吗?

您需要:

  • 自己编写导入代码(使用数据步骤)
  • 以某种方式下载文件,然后对下载的文件运行
    PROC IMPORT
如果选择第二个选项,可以通过几种方法来实现。最简单的方法可能是编写类似上述数据步骤的内容,读入整行或使用
\u infle\u
自动变量,然后在本地将其写出。大致如下(当然,定义或更改这些文件名):


天哪。谢谢
data _null_;
 infile Sftpfile;
 file localf;
 input @;
 put _infile_;
run;