14

SAS 显示管理器是 SAS 系统的命令行接口,它作为遗留设施保留在 Base SAS 中。

然而,关于如何使用这个工具的在线文档充其量是稀少的,而且谷歌搜索也没有什么成果。

一个常见的 DM 命令是:CLEAR LOG;清除输出;WPGM;

我的问题是 - 还有哪些其他 DM 命令?

4

9 回答 9

10

以下是一些包含大量命令的链接:

FSP 命令
特定于 Windows的
命令 AF 窗口化命令
程序编辑器的命令(向下滚动到第二段)

于 2009-08-05T20:51:18.867 回答
8

我喜欢一次关闭所有视图表:

%macro closevts / /* The cmd option makes the macro available to dms */ / cmd; 
  %local i; 
  %do i=1 %to 20;
    next "viewtable:"; end; 
  %end; 
%mend;

dm "keydef F12 '%NRSTR(%closevts);'";
于 2010-07-15T08:59:04.517 回答
5

我发现一些有用的示例(以开放代码格式)是:

dm "vt &syslast"; * open a dataset ;
dm "keydef F2 'next VIEWTABLE:; end'"; * close ViewTable windows (credit cmjohns) ;
dm "keydef F4 'viewtable &syslast view=form'"; * open table in form view ;
dm 'keydef f11 rsubmit'; * assigns the rsubmit command to the F11 key ;
dm "keydef F12 'cle log; cle output; submit'"; 
dm "next explorer; detail";  * applies detail view to explorer (credit to Liz);
dm "keydef F7 ""command focus;"""; * puts command bar in focus (credit to Trevor);
于 2009-08-05T12:54:08.057 回答
5

不幸的是,SAS 的命令似乎并没有列在一个单一的在线位置。但是,所有命令都记录在 SAS 中。

1.进入help命令行

在此处输入图像描述

2. 搜索确切的短语“SAS 命令概述”

在此处输入图像描述

3. 选择链接“SAS Commands by Category”

这带来了以下列表:

在此处输入图像描述

其他人提到的所有命令都出现在此列表中。与您的问题相关的类别是“窗口管理”。

4.向下滚动到“窗口管理”类别

在此处输入图像描述

于 2017-04-04T18:46:51.023 回答
4

我使用的几个快捷方式(除了cle <windowname>

  • fsv <datasetname> (使用 FS 视图打开数据集)
  • vt <datasetmae>(使用查看表打开数据集)
  • subtop <N# of line>(从程序编辑器提交前 N 行)

另一个有用的功能.. 使用显示管理器菜单来执行您想要命令的任务。然后打开命令行并发出?命令或(如有必要)一系列?命令。这将检索回命令行执行的最后一个命令(即使该命令是由显示管理器菜单系统执行的)。

通过查看之前执行的命令,可以发现一些比较晦涩的命令。我相信每个显示管理器菜单都有其等效的命令行,然后您可以使用。

于 2009-08-05T13:39:16.850 回答
2

我将 CTRL+F3 设置为 'rsubmit' - 在开发代码以进入远程生产时节省键入 rsubmit / endrsubmit。

于 2009-08-27T08:52:42.683 回答
1

cmjohns 发布的给出命令列表的链接非常棒!

关于这些命令的一些附加信息...
您可以在 SAS 显示管理器中将这些命令设置为快捷方式。
打开 DMKEYS(应该是 F2,或者输入命令 'keys')。DMKEYS 向您显示所有默认快捷方式,但您可以根据需要对其进行修改。

例如:
我喜欢设置 F12=log;clear;pgm;submit; (这将从日志窗口“清除所有”并从程序编辑器提交代码)
您还可以通过复制/粘贴使其更直观...
Ctrl C=store
Ctrl V=paste

于 2009-08-07T17:21:37.330 回答
1

为了质量保证,我经常运行一个 SAS 脚本。通常我想给它分配一个快捷键。

我现在在我的autoexec.sas. 我保留了整个宏,以便您更轻松地根据需要调整脚本。

如果您将脚本另存为c:\tmp\testDMKEYS.sas,并运行宏中的前两个命令(例如,通过选择它们并按 F3),那么当您按 F12 时DM KEYDEF successful.将出现日志消息。

%macro rem/des='helper for debugging DM KEYDEF';
    /* This goes in your autoexec.sas: */
    dm 'keydef F12 %NRSTR(%inc %"&_my_favorite_program%";)';
    /* This too, although you can always change it later. */
    %let _my_favorite_program=c:/tmp/testDMKEYS.sas;

    /* Here are some useful debugging tools for quoting issues */
    data foo; bar=1; run;
    %inc "c:/tmp/testDMKEYS.sas";
    /* escape from SAS open block, a.k.a. quote killer
    %mend; quit; ;*';*";*/;
%mend;

%put DM KEYDEF successful.;

如果您对简化有任何建议,请在评论中添加。

于 2015-12-20T01:33:53.660 回答
0

一些打开其他有用窗口的命令包括:

• 辅助 - SAS 的菜单驱动版本
• dir - 显示库
中的数据集 • var - 显示数据集中的变量
• 记事本 - 简单文本窗口
• 选项 - 查看和更改系统选项
• 文件名 - 查看当前文件名分配
• 帮助 -交互式帮助系统
• libname - 查看当前的 libname 分配

适用于任何窗口的一些有用的显示管理器命令包括:

• clear - 清除窗口内容
• end - 关闭窗口
• endsas - 结束 sas 会话
• file "filename" - 将窗口内容保存到文件名
• prevcmd - 调用之前的显示管理器命令

(摘自http://www.stat.berkeley.edu/classes/s100/sas.pdf

于 2010-08-29T12:58:13.457 回答