Macro lsfp2sas - Listado de archivos Unix/Linux a SAS

Este código también está disponible en: Deutsch English Français
Nivel de dificultad
Principiante
Publicado el :
Attention : Este código requiere privilegios de administrador.
La macro `lsfp2sas©` utiliza el método `filename pipe` para ejecutar un comando shell de Unix (bucle `for` sobre el patrón de archivo). Captura la salida estándar de este comando para crear un dataset SAS© que contiene la ruta completa del archivo (`filename`) y el nombre del archivo solo en minúsculas (`lcfname`). Gestiona las opciones de SAS© (NOTES) para evitar contaminar el log.
Análisis de datos

Type : EXTERNE


Los datos provienen del árbol del sistema de archivos del sistema operativo (comando shell ejecutado a través de Pipe).

1 Bloque de código
DATA STEP Data
Explicación :
Definición de la macro. Guarda las opciones, define un fileref de tipo PIPE que ejecuta un comando shell para listar los archivos, y un paso Data para leer el flujo devuelto por el comando y crear la tabla de salida.
¡Copiado!
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;
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
Información de copyright : Author: Roland Rashleigh-Berry. Public domain software.


Documentación relacionada

Aucune documentation spécifique pour cette catégorie.