Работа с командной строкой CMD PROMPT через SAS



Всем привет!
Данная небольшая статья о работе с командной строкой (COMMAND PROMPT) в SAS и запуском внешних программ.


Работа с prompt осуществленная несколькими способами. В качестве примера используется команда копирования\переименование файла:
1.       Через синтаксис X:
x 'copy input.txt input_x.txt';

2.       Через макро вызов:
%sysexec(copy input.txt input_sysexec.txt);

3.       Через синтаксис в DATA STEP:
data _null_;
                call system('copy input.txt input_system.txt');
run;
Также есть возможность синтаксиса через вызов SYSTASK, но я никогда им не пользовался. На мой взгляд, этот способ является расширенным, по сравнению с первыми 3. Возможно, в будущих статьях будет затронут этот метод.

В SAS путь по умолчанию \SAS\config\Lev1\SASApp для среды Windows. Для того чтобы изменить этот путь можно выполнить команду CD. Правда в случае с %sysexec команда отработана не будет. Пример синтаксиса:

data _null_;
                call system('cd c:\');
run;

или

x 'cd c:\';

Запуск команд может быть двух типов: синхронный и асинхронный.
Существует опция, которая также заставляет пользователя напечатать EXIT, чтобы вернуться к своей текущей сессии SAS в случае запуска команды. Синтаксис: options XWAIT / NOXWAIT.

В случае если возникла ошибка с запуском CMD команд в SAS Enterprise Guide, то вам сюда.

На этом всё и до скорых встреч!

Ярлыки: ,