我想将SAS数据集从SAS导出到FTP.我可以使用以下命令导出csv文件(或txt文件):
%macro export_to_ftp(dsn= ,outfile_name= );
Filename MyFTP ftp "&outfile_name."
HOST='ftp.site.com'
cd= "&DATA_STRM/QC"
USER=&ftp_user.
PASS=&ftp_pass.;
PROC EXPORT DATA= &dsn. OUTFILE= MyFTP DBMS=%SCAN(&outfile_name.,2,.) REPLACE;
RUN; filename MyFTP clear;
%mend;
%export_to_ftp(dsn=lib1.dataset ,outfile_name=dataset.csv);
Run Code Online (Sandbox Code Playgroud)
但无法使用它来导出SAS数据集.任何人都可以帮助我.
谢谢!
PROC EXPORT不用于导出SAS数据集,它用于将SAS数据集转换为其他格式.您通常不会使用FTP文件名方法来传输SAS数据集; 如果您打算从一台SAS机器转移到另一台SAS机器,您可以使用SAS/CONNECT(如果您需要SAS/CONNECT许可并希望获得帮助,请说明),或使用普通(OS)FTP进程传输文件.技术上可以使用FTP文件名方法传输SAS文件(作为二进制文件,然后逐字节读取),但这容易出错并且过于复杂.
如果您使用SAS来驱动该过程,最好的方法是在您的操作系统中编写FTP脚本,并使用x或%sysmd调用该脚本,并将文件名作为参数传递.如果您包含有关操作系统的信息,可以轻松地绘制一些内容来帮助您.
注意:如果您在服务器上,则需要验证您是否拥有"x"权限; 那经常被锁定.如果不这样做,您可能无法完全从SAS运行.