Macro lsfp2sas - Auflistung von Unix/Linux-Dateien nach SAS

Dieser Code ist auch verfügbar auf: English Español Français
Schwierigkeitsgrad
Anfänger
Veröffentlicht am :
Attention : Dieser Code erfordert Administratorrechte.
Das Makro `lsfp2sas©` verwendet die `filename pipe`-Methode, um einen Unix-Shell-Befehl (Loop `for` über das Dateimuster) auszuführen. Es erfasst die Standardausgabe dieses Befehls, um ein SAS©-Dataset zu erstellen, das den vollständigen Dateipfad (`filename`) und den Dateinamen allein in Kleinbuchstaben (`lcfname`) enthält. Es verwaltet die SAS©-Optionen (NOTES), um das Log nicht zu überladen.
Datenanalyse

Type : EXTERNE


Die Daten stammen aus der Dateisystemstruktur des Betriebssystems (Shell-Befehl, der über Pipe ausgeführt wird).

1 Codeblock
DATA STEP Data
Erklärung :
Definition des Makros. Speicherung der Optionen, Definition eines Filerefs vom Typ PIPE, der einen Shell-Befehl zum Auflisten von Dateien ausführt, und Data-Schritt zum Lesen des vom Befehl zurückgegebenen Streams und zum Erstellen der Ausgabetabelle.
Kopiert!
1%macro lsfp2sas(filepattern,dsout);
2 
3 %local savopts;
4 %let savopts=%sysfunc(getoption(NOTES));
5 
6 %IF not %LENGTH(&dsout) %THEN %let dsout=_lsfp2sas;
7 
8 options nonotes;
9 
10 filename _lsfp pipe
11 "for fn in %sysfunc(dequote(&filepattern)) ; do echo $fn ; done";
12 
13 DATA &dsout;
14 LENGTH filename $ 300 lcfname $ 200;
15 INFILE _lsfp;
16 INPUT;
17 filename=trim(_infile_);
18 lcfname=lowcase(scan(filename,-1,"/"));
19 RUN;
20 
21 filename _lsfp CLEAR;
22 
23 options &savopts;
24 
25%mend lsfp2sas;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
Urheberrechtsinformationen : Author: Roland Rashleigh-Berry. Public domain software.


Zugehörige Dokumentation

Aucune documentation spécifique pour cette catégorie.