Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Repetitivo requerido para scripts operativos

RESUMEN Defina la plantilla para los scripts de operación.

Los scripts op de Junos OS se pueden escribir en transformaciones de lenguaje de hoja de estilos extensible (XSLT), Stylesheet Language Alternative syntaX (SLAX) o Python. Los scripts Op deben incluir la plantilla necesaria requerida para ese lenguaje de script, tanto para la funcionalidad básica del script, como para cualquier funcionalidad opcional utilizada dentro del script, como las funciones de extensión de Junos OS y las plantillas con nombre. En este tema se proporciona un modelo repetitivo estándar que se puede usar en scripts de operaciones XSLT, SLAX y Python.

Los scripts operativos SLAX y XSLT se basan en elementos de etiqueta de protocolo Junos XML y Junos XML. Al igual que todos los elementos XML, los corchetes angulares encierran el nombre de un elemento de etiqueta de protocolo Junos XML o Junos XML en sus etiquetas de apertura y cierre. Se trata de una convención XML y los corchetes son una parte obligatoria del nombre completo del elemento de etiqueta. No deben confundirse con los corchetes angulares utilizados en la documentación para indicar partes opcionales de las cadenas de comandos de la CLI de Junos OS.

Plantilla XSLT para scripts operativos

La plantilla de script op XSLT es la siguiente:

La línea 1 es la instrucción de procesamiento (PI) del lenguaje de marcado extensible (XML), que marca este archivo como XML y especifica la versión de XML como 1.0. El IP XML, si está presente, debe ser el primer token sin comentarios en el archivo de script.

La línea 2 abre la hoja de estilos y especifica la versión XSLT como 1.0.

En las líneas 3 a 6 se enumeran todas las asignaciones de espacio de nombres que se usan habitualmente en los scripts de operación. No todos estos prefijos se usan en este ejemplo, pero no es un error enumerar asignaciones de espacio de nombres a las que no se hace referencia. Enumerar todas las asignaciones de espacio de nombres evita errores si las asignaciones se usan en versiones posteriores del script.

La línea 7 es una instrucción de importación XSLT. Carga las plantillas y variables del archivo al que se hace referencia como .. /import/junos.xsl, que se incluye como parte de Junos OS (en el archivo /usr/libdata/cscript/import/junos.xsl). El archivo junos.xsl contiene un conjunto de plantillas con nombre a las que puede llamar en los scripts. Estas plantillas con nombre se describen en Descripción de las plantillas con nombre en scripts de automatización de Junos OS .

La línea 8 define una plantilla que coincide con el </> elemento. El <xsl:template match="/"> elemento es el elemento raíz y representa el nivel superior de la jerarquía XML. Todas las expresiones XPath del script deben comenzar en el nivel superior. Esto permite que la secuencia de comandos acceda a todas las posibles llamadas a procedimiento remoto (RPC) de protocolo Junos XML y Junos XML. Para obtener más información, vea Información general sobre XPath.

Después del elemento tag <xsl:template match="/"> , las <op-script-results> etiquetas contenedor y </op-script-results> deben ser las etiquetas secundarias de nivel superior, como se muestra en las líneas 9 y 10.

La línea 11 cierra la plantilla.

Entre la línea 11 y la línea 12, puede definir plantillas XSLT adicionales a las que se llama desde dentro de la <xsl:template match="/"> plantilla.

La línea 12 cierra la hoja de estilos y el script op.

Plantilla SLAX para scripts operativos

La plantilla de script op de SLAX es la siguiente:

Python Boilerplate para scripts operativos

Los scripts op de Python no tienen una plantilla requerida, pero deben importar cualquier objeto que se use en el script. Los scripts op de Python pueden importar lo siguiente:

  • Junos_Context diccionario: contiene información sobre el entorno de ejecución de scripts.

  • jcs Biblioteca: permite que la secuencia de comandos utilice las funciones de extensión de Junos OS y la funcionalidad de plantilla con nombre de Junos OS en la secuencia de comandos.

  • jnpr.junos módulo y clases: permite que el script utilice Junos PyEZ.

Por ejemplo:

Los scripts de automatización de Python no necesitan incluir una línea de directiva de intérprete (#!/usr/bin/env python) al principio del script. Sin embargo, el programa seguirá ejecutándose correctamente si hay uno presente.