Attention : Este código requiere privilegios de administrador.
La macro `%cmd2ds` toma dos parámetros: `cmd` (el comando del sistema a ejecutar) y `dsout` (el nombre del conjunto de datos de salida, por defecto `_cmd2ds`). Utiliza la interfaz `filename ... pipe` para ejecutar el comando y redirigir su salida estándar. Un DATA STEP luego lee cada línea de esta salida y la almacena en una variable `str` de 256 caracteres en el conjunto de datos especificado. La referencia `filename` se libera después, lo cual es crucial para los recursos del sistema.
Análisis de datos
Type : CREATION_INTERNE
El conjunto de datos de salida se crea dinámicamente leyendo la salida estándar de un comando del sistema ejecutado a través de la interfaz 'pipe'. Cada línea de salida del comando se convierte en una observación en el conjunto de datos SAS.
1 Bloque de código
DATA STEP Data
Explicación : Este bloque define la macro `%cmd2ds`. Gestiona el nombre del conjunto de datos de salida asignándole un valor predeterminado `_cmd2ds` si `dsout` no se especifica. La declaración `filename _cmd2ds pipe "&cmd";` es crucial porque ejecuta el comando del sistema proporcionado por el parámetro `&cmd` y asocia su salida a la fileref `_cmd2ds`. El `DATA STEP` luego lee esta salida línea por línea usando `infile _cmd2ds;` e `input;`, asignando cada línea a la variable `_infile_` y luego a la variable `str`, creando así el conjunto de datos SAS. Finalmente, `filename _cmd2ds CLEAR;` libera la fileref, cerrando la tubería y liberando los recursos del sistema.
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 : This is public domain software. No guarantee as to suitability or accuracy is given or implied. User uses this code entirely at their own risk.
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.