如何获取用户属性,如sas中创建的
如何获取.sas文件的用户详细信息或目录中存储的所有文件的文件属性?我试图为宏获取所有可能的属性,如:修改日期、修改人、创建人如何获取用户属性,如sas中创建的,sas,sas-macro,Sas,Sas Macro,如何获取.sas文件的用户详细信息或目录中存储的所有文件的文件属性?我试图为宏获取所有可能的属性,如:修改日期、修改人、创建人 data dir_meta(drop=rc file_ref fid); %let directory_ref = %sysfunc(filename(dirref,&dir)); %let dir_id=%sysfunc(dopen(&dirref)); if &dir_id eq 0 then do; put _error_=1; r
data dir_meta(drop=rc file_ref fid);
%let directory_ref = %sysfunc(filename(dirref,&dir));
%let dir_id=%sysfunc(dopen(&dirref));
if &dir_id eq 0 then do;
put _error_=1;
return;
end;
%let _count=%sysfunc(dnum(&dir_id);
do i=1 to &_count;
%let dir_name = %sysfunc(dread(&dir_id,&i);
if upcase(scan(&dir_name,-1,.)) = upcase(&extn) then do;
put &dir\&dir_name;
file_ref='temp';
file_name=%sysfunc( filename(file_ref,"&dir\&&dir_name"));
fid=%sysfunc(fopen(file_ref));
create_date=%sysfunc(finfo(&fid,Create Time));
Modified_date=%sysfunc(finfo(&fid,Last Modified));
output;
rc=fclose(fid);
end;
end;
%let rc_dir=%sysfunc(dclose(dir_id);
run;
斯韦塔
假定您在最新版本的Windows中使用SAS,并且会话允许使用X命令,则可以将powershell命令的结果通过管道传输到数据步骤,以读取所需的任何信息
在powershell中,使用此命令查看有关可选择文件的各种信息
PS > DIR | GET-MEMBER
一旦您决定让成员选择数据步骤,即可读取powershell输出。例如:
filename fileinfo pipe 'powershell -command "dir | select Fullname, Length, @{E={$_.LastWriteTime.ToString(''yyyy-MM-ddTHH:mm:ss.ffffffzzz'')}} | convertTo-csv"';
* powershell datetime formatting tips: https://technet.microsoft.com/en-us/library/ee692801.aspx?f=255&MSPPError=-2147217396;
data mydata;
infile fileinfo missover firstobs=4 dsd dlm=',';
attrib
filename length=$250
size length=8 format=comma12.
lastwrite length=8 format=datetime20. informat=E8601DZ32.6
;
input filename size lastwrite;
run;
请解释您在使用该代码时遇到的问题。看起来您已经将数据步骤逻辑与宏逻辑混合在一起了,我会惊讶地听到这一点。Proc内容可能会有所帮助?那很好。问题是什么?如果您需要帮助,您需要提供更多详细信息,但首先,FINO提供的信息有限,因此我认为它无法提供您需要的信息: