SAS重命名SFTP上的文件

时间:2016-03-01 08:08:35

标签: sas sftp

我在SAS的任务是通过扩展名为tmp的SFTP上传文件,并在上传完成后将其重命名为csv。因为我不是服务器的管理员,所以我的调试输出是有限的,我正在使用正确的实现。以下代码在SAS日志中不会生成错误,但不会重命名该文件:

%let host=...;
%let sftpUser = ...;
%let filename_tmp=20160301-test01-sas.tmp;
%let filename=20160301-test01-sas.csv;
%let sftpPath=...;

FILENAME test SFTP "&sftpPath.&filename_tmp." 
HOST="&host." 
USER="&sftpUser."   
DEBUG;

proc export data=.... outfile=test dbms=csv replace; 
run;

data _null_;
rc=rename("test&sftpPath.&filename_tmp.", "test&sftpPath.&filename.", 'file');
run;

我已经阅读了文件名和重命名的文档,但我无法得到如何结合两种语句的线索 - 非常感谢任何帮助或提示或替代方案。

由于 斯蒂芬

1 个答案:

答案 0 :(得分:0)

  

目标服务器上运行的脚本扫描csv文件并每分钟移动一次,因此在上传未完成时存在移动文件的危险。

我非常确定文件没有被移动的危险,因为它应该被锁定,直到上传完成。试试吧。