初始化sas批处理作业时更改授权级别

时间:2015-04-30 10:37:30

标签: unix sas batch-processing

我在UNIX服务器上运行SAS批处理作业,并且通常会遇到以下问题:我无法在本地创建由我的用户本地创建的sas数据集,而不会更改Windows中每个文件的授权级别。在初始化批处理作业时是否可以使用我的用户ID和密码登录,以使我能够批量获得完全授权(到我自己的文件)?

另一个问题是我没有授权在服务器上的本地远程会话上使用PIPE运行UNIX命令,因此无法终止我自己的会话。另一方面可以批量运行PIPE,但这只允许我终止批处理作业,所以我也想知道是否可以使用我的id和密码批量运行管道命令,因为批处理用户没有授权取消我的用户“本地远程会话”?

终止过程的示例代码:

%let processid = 6938710;
%let unixcmd = "kill &processid";
%PUT executing &unixcmd;
filename unixcmd pipe &unixcmd.;

1 个答案:

答案 0 :(得分:1)

对以下SAS support page中的第一点有一个完整的答案。

您可以使用umask Unix命令指定用于在SAS会话期间创建的永久数据集的默认文件权限策略(无论是否批处理)。 如果您正在使用调用SAS批处理会话的Unix脚本,则可以在执行sas之前放置一个umask命令。 否则,您可以在上述SAS支持文章中指定的某个位置采用更永久的解决方案,包括umask命令。

您可能对以下内容感兴趣:

umask 002

这将为所有新数据集分配rw-rw-r--文件权限。