Los datos procesados por el script provienen de la salida estándar de un comando del sistema operativo (por ejemplo, 'dir' en Windows) ejecutado a través de `filename pipe`. Estos datos son leídos y analizados sobre la marcha por el paso DATA.
1 Bloque de código
MACRO / FILENAME
Explicación : Este bloque define el inicio de la macro `%getstats` y declara un fileref `cmd` de tipo 'pipe'. Este fileref está configurado para ejecutar un comando del sistema operativo (pasado como argumento `dir_cmd`) y redirigir su salida a SAS, permitiendo así a SAS leer esta salida como un archivo.
Explicación : Este bloque `DATA _NULL_` lee la salida del comando OS a través del fileref `cmd`. Está diseñado para leer la sexta línea (`#6`) y extraer valores de fecha (`date`), hora (`time`) y tamaño (`size`) utilizando formatos SAS específicos. **Advertencia:** Las cadenas de caracteres `@code_sas_json/...` incluidas en la instrucción `input` del código original representan un error de sintaxis SAS y harían que el script no funcionara. La intención era probablemente especificar posiciones de columna numéricas (por ejemplo, `@code_sas_json_prod_multi/10 One to One Merge_de.json date ...`). Después de la lectura, `call symput` se utiliza para almacenar estos valores formateados en las variables macro globales `_date`, `_time` y `_size`.
¡Copiado!
data _null_ ;
infile cmd truncover ;
* This works on windows XP Professional, but on other version you might need to adjust the settings to
read the information you want from different positions ;
input #6 @code_sas_json/L3.13-Storing_a_List_of_Values_in_a_Macro-Variable.json date ddmmyy10.
@code_sas_json/L3.13-Storing_a_List_of_Values_in_a_Macro-Variable.json time time5.
@code_sas_json/q203.json size comma17. ;
* Now write the data to macro variables to be used ;
call symput('_date',put(date,date9.)) ;
call symput('_time',put(time,time5.)) ;
* note we use left justification within formatted field , otherwise number is right justified within field ;
call symput('_size',put(size,comma9. -l)) ;
run ;
1
DATA _null_ ;
2
INFILE cmd truncover ;
3
* This works on windows XP Professional, but on other version you might need to adjust the settings to
4
read the information you want from different positions ;
5
INPUT #6 @code_sas_json/L3.13-Storing_a_List_of_Values_in_a_Macro-Variable.json date ddmmyy10.
6
@code_sas_json/L3.13-Storing_a_List_of_Values_in_a_Macro-Variable.json time time5.
7
@code_sas_json/q203.json size comma17. ;
8
* Now write the data to macro variables to be used ;
9
call symput('_date',put(date,date9.)) ;
10
call symput('_time',put(time,time5.)) ;
11
* note we use left justification within formatted field , otherwise number is right justified within field ;
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.
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.