我有一个SAS%get_files(location)宏来获取位置变量中的文件名列表。它适用于本地路径,但如何将FTP位置传递到此位置变量并获取其中的文件名列表?
这是宏
%macro get_filenames(location);
filename _dir_ "%bquote(&location.)";
data filenames(keep=memname);
handle=dopen( '_dir_' );
if handle > 0 then do;
count=dnum(handle);
do i=1 to count;
memname=dread(handle,i);
output filenames;
end;
end;
rc=dclose(handle);
run;
filename _dir_ clear;
%mend;
我使用了这种FTP方法,但它不起作用
filename ftpdir ftp '' ls PASSIVE
host="&sharefile_host"
user="&sharefile_ftp_user"
pass="&sharefile_ftp_pw"
recfm=v prompt;
%get_filenames("ftpdir");
有更好的方法吗?
感谢您的帮助!