прок печать: журналов и процедуры вывода файл не заподлицо %поставить вывод в лог-файл
Я пытаюсь перенаправить вывод журнала и процедуры в один и тот же файл назначения для использования в интерактивном сеансе sas, чтобы я мог использовать tail -f
в этом файле.
Итак, я делаю
proc printo print = "/home/tq84/sas.log"; run;
proc printo log = "/home/tq84/sas.log"; run;
Я установил опцию logparm
в write=immediate
.
Если я попытаюсь записать что-то в журнал с помощью %put text;
, это не будет немедленно записано в /home/tq84/sas.log
.
Однако, когда я выполняю простой proc sql; quit;
, ранее буферизованный вывод журнала сбрасывается в /home/tq84/sas.log
.
Я ищу идею о том, как записать и журнал, и вывод процедуры в один и тот же файл и, чтобы немедленно смыть оба, когда они доступны.
1 ответ:
Это работает для меня.
Запуск sas с
C:\temp>sas -logparm "write=immediate"
Затем я выдаю:
proc printto print="c:\temp\test.log"; run; proc printto log="c:\temp\test.log"; run;
Я открываю файл журнала в Sublime Text, обновляя его, когда файл это делает.
Затем представить:
%put HI THERE!;
, который не выводится в журнал, пока я не выдам инструкцию
PROC
. (Предполагая, что шаг данных тоже будет работать.)Если я перезапущу сеанс и переупорядочу
PRINTTO
proc printto log="c:\temp\test.log"; run; proc printto print="c:\temp\test.log"; run;
Затем
%put HI THERE!;
Идет в журнал как можно скорее.