2016-10-18 2 views
1

Was ich will, ist, den Status des Servers zu erhalten, indem Sie den folgenden Code verwenden:Wie den Status sas.servers bekommen Codes

rsubmit; 
X 'sh /sas/config/Lev1/sas.servers status'; 
endrsubmit; 

dann die Details mit einem monatlichen Bericht zu machen. Die Datei sas.servers benötigt jedoch ein Passwort, um den Status der Server anzuzeigen.

Bitte helfen Sie mir, wie dies mit einer externen Datei, die das Passwort, das zum Ausführen der Datei verwendet wird, zu tun ist.

Antwort

0

Ich würde empfehlen, dass ein Teil des Skripts in einer externen Datei setzen, in einem Verzeichnis gespeichert, das nur zugänglich für die entsprechenden Benutzer (n), und über %include Aufruf - zum Beispiel wie folgt:

rsubmit; 
options nosource2; /* ensure contents aren't written to log */ 
%inc "/mySecurePath/myprog.sas"; 
endrsubmit; 

Das Problem mit dem Einfügen in eine Makrovariable ist, dass es unbeabsichtigt in einem Protokoll angezeigt werden kann.

+0

Was normalerweise hilft, ist es, entweder Ihr Makro-Passwort sofort nach der Verwendung "% symdel" oder setzen Sie es auf einen Nullwert. – user667489

+0

Ich fand heraus, dass wenn ich das Programm unter Verwendung des Benutzers ausführen, es das Kennwort nicht erfordert. Ich versuche nun, den Status mithilfe des folgenden Codes in einer Protokolldatei zu speichern: –

+0

'rsubmit; X 'sh /sas/config/Lev1/sas.servers status & >> C: \ Benutzer \ mine \ logtest.txt'; endsubmit; ' –

Verwandte Themen