Finalidad:Crear, modificar o mostrar funciones variables definidas por el usuario

 

Formato:Modo de visualización:

FUNCIÓN [/GL /LL /P] [nombre salvaje]

 

Modo de definición directa:

FUNCIÓN [/= /GL /LL] nombre [=]definición

 

Modo de archivo de definición:

FUNCIÓN [/= /G /GL /L /LL /O /Z] /R [presentar...]

         

presentarUno o más archivos de entrada para leer las definiciones de funciones.
nombre salvajeNombre de la función cuya definición se va a mostrar (puede contener * y ? comodines)
nombre El nombre de la función que desea definir.
definiciónEl valor o definición de lo que debe devolver la función.

 

/Global)/Pausa)
/GL (lista global)/R(leer archivo)
/Local)/Z (sobrescribir lista)

/LL (lista local)

 

Ver también: FUNCIÓN y ESET.

 

Sintaxis de finalización de archivos:

 

El valor por defecto finalización del nombre de archivo la sintaxis es: [/r] * [1] funciones [2*] *

 

Uso:

 

Un paso        Descripción

Un paso        Funciones de visualización

Un paso        Definición de funciones

Un paso        Eliminar funciones

Un paso        Funciones locales y globales

Un paso        Guardar y recargar sus funciones

Un paso        Advertencias

 

Descripción

 

FUNCIÓN le permite crear o mostrar usuarios-se define variable Funciones que se pueden utilizar en cualquier lugar. Funciones variables puede ser usado. Las funciones definidas por el usuario son poderosas alternativas a subrutinas.

 

Funciones de visualización

 

Si invoca el comando FUNCTION sin parámetros, mostrará la lista de funciones actuales (la lista de funciones locales si ha configurado funciones locales en TCMD.INI o el TCC línea de comando de inicio; de lo contrario, la lista de funciones globales):

 

función

 

Si incluye un nombre salvaje, que puede incluir comodines (* or ?), sin signo igual y sin definición, FUNCTION mostrará los valores actuales, si los hay, de todas las funciones que coincidan nombre salvaje, .p.ej.:

 

función *dx*

 

mostrará todas las funciones que contienen dx en su nombre

 

Puede utilizar el /P Opción para controlar el desplazamiento de la pantalla al mostrar funciones.

 

Definición de funciones

 

Si incluye el signo igual y definición, FUNCTION creará o actualizará la función a la que hace referencia nombre . Cualquier anterior definición asociado con nombre se descarta. En vez de = firmar, puede utilizar uno o más espacios o caracteres de tabulación para separar nombre y definición.

 

Una vez que se define una función, la definición se puede editar usando ESET /F.

 

Opcionalmente, una función puede utilizar referencias a parámetros numerados desde %0 a 511% que será reemplazado con el valor del parámetro correspondiente cuando se llame a la función. %0 se refiere al nombre de la función, %1 al primer parámetro, etc. Por ejemplo, la función

 

función más a la izquierda=`%@izquierda[1,%1]`

 

devolverá el carácter más a la izquierda en su parámetro, p.e. %@más a la izquierda[xyz] regresará x.

 

El parámetro %n$ tiene un significado especial. TCC lo interpreta en el sentido de "todos los argumentos, desde el parámetro n hasta el final."  Si n no se especifica, tiene un valor predeterminado de 1, asi que %$ significa "todos los argumentos pasados ​​a la función".

 

El parámetro %-n$ significa "los argumentos del parámetro 1 al n - 1".

 

La referencia de variable especial %# se expande al número of parámetros pasados ​​a la función.

 

La definición de una función no necesita hacer referencia a ningún parámetro. Por ejemplo:

 

función mañana=`%@makedate[%@inc[%@date[%_date]]]`

 

podría ser simplemente invocado como %@mañana[].

 

Para usar la función nombre tu invocas es como %@nombre[parámetros], donde debe especificar suficientes parámetros para asignar un valor al parámetro con el número más alto referencia en la definición de la función. Es posible que tenga más parámetros, que se ignorarán silenciosamente.

 

La Colores, nombres de colores y códigos El tema muestra un ejemplo simple del uso de una función en un archivo por lotes.

 

Eliminar funciones

 

El método normal es utilizar el FUNCIÓN dominio. Sin embargo, también es posible eliminar una función redefiniéndola sin un definición, por ejemplo, el comando

 

función fs=

 

elimina la función fs.

 

Funciones locales y globales

 

Las funciones se pueden almacenar en local y/o global listas si haces la campaña con varios autores.

 

Con una lista de funciones local, cualquier cambio realizado en las funciones solo afectará la copia actual de TCC. No serán visibles en otros shells ni en otras sesiones.

 

Con una lista de funciones global, todas las copias de TCC compartirá la misma lista de funciones, y cualquier cambio realizado en las funciones en una copia afectará a todas las demás copias. Este es el valor predeterminado en TCC.

 

Puede controlar el tipo de lista de funciones a utilizar con las opciones /GL y /LL en FUNCTION, Funciones locales y Funciones globales opciones de configuración, con la /L y /LF opciones de la EMPIEZA comando, y con el /L y /LF opciones de inicio.

 

Si no especifica /GL o /LL, TCC Primero buscará funciones en la lista local. Si no hay una lista local o no se encuentra la función, TCC buscará en la lista global (si existe).

 

No existe una regla fija para determinar si se debe utilizar una lista de funciones local o global. Dependiendo de su estilo de trabajo, puede que le resulte más conveniente utilizar un tipo o una combinación de tipos en diferentes sesiones o shells. Le recomendamos que comience con el enfoque predeterminado y luego lo modifique si encuentra una situación en la que el valor predeterminado no es conveniente.

 

Siempre que inicie una segunda copia de TCC que utiliza una lista de funciones local, hereda una copia de las funciones del shell anterior. Sin embargo, cualquier cambio en las funciones realizadas en el segundo shell afectará sólo a ese shell. Si desea que los cambios realizados en el segundo shell afecten al shell anterior, utilice una lista de funciones globales en ambos shells.

 

Guardar y recargar sus funciones

 

Puede guardar sus funciones en un archivo (por ejemplo, FUNCIONES.LST) Por aquí:

 

función > función.lst

 

Luego podrá volver a cargar todas las definiciones de funciones en el archivo la próxima vez que inicie con el comando:

 

función /r función.lst

 

Esto es mucho más rápido que definir cada función individualmente en un archivo por lotes. Si mantiene las definiciones de sus funciones en un archivo separado que carga cuando TCC inicia, puede editarlos con un editor de texto, recargar el archivo editado con FUNCTION /R y saber que se cargará la misma lista de funciones la próxima vez que inicie TCC.

 

Cuando define funciones en un archivo que será procesado por el comando FUNCTION /R, no necesita comillas alrededor de la definición, incluso si normalmente se necesitarían comillas al definir la misma función en la línea de comando o en un archivo por lotes.

 

Advertencias

 

Cuando define una función en la línea de comando (es decir, sin usar el /R opción), las variables y funciones no protegidas por comillas invertidas o signos de % duplicados se evalúan inmediatamente y el resultado pasa a formar parte de la definición de la función.

 

Los errores de sintaxis en la definición de una función no se detectan hasta que se utiliza.

 

Opciones:

 

/=Muestre el cuadro de diálogo del comando FUNCIÓN para ayudarlo a configurar las opciones de la línea de comando. La opción /= puede estar en cualquier lugar de la línea; Las opciones adicionales establecerán los campos apropiados en el cuadro de diálogo de comando.

 

/GCambie de una lista de funciones local a una global. Si ya tiene una lista de funciones globales (por ejemplo, en otro TCC instancia o en SHRALIAS), FUNCTION no realizará la conversión.

 

/GLLeer y escribir en la lista de funciones globales. Si tiene listas de funciones locales y globales definidas y no especifica /GL, FUNCTION utilizará de forma predeterminada la lista local.

 

/LCambie de una lista de funciones global a una local.

 

/LLLeer y escribir en la lista de funciones locales.

 

/ONo sobrescriba los valores existentes (solo válido en combinación con /R).

 

/PEspere a que se presione una tecla después de cada página de la pantalla antes de continuar con la visualización.

 

/REsta opción carga una lista de funciones de un archivo. Si no se especifica ningún nombre de archivo y se redirige la entrada, /R leerá desde stdin. El formato del archivo es el mismo que el de la pantalla FUNCTION:

 

nombre=definición

 

donde nombre es el nombre de la función y definición especifica cómo determinar su valor. Puedes usar el signo igual. = o espacios en blanco para separar nombre y definición. No se requieren comillas inversas.

 

Puede agregar comentarios al archivo comenzando cada línea de comentario con dos puntos :.

 

Puedes cargar varios archivos con un comando FUNCTION /R colocando los nombres en la línea de comando, separados por espacios:

 

función /r func1.lst func2.lst

 

Las definiciones de FUNCIÓN /R pueden abarcar varias líneas en el archivo si cada línea, excepto la última, termina con un Personaje de escape.

 

Si no hay ningún parámetro de nombre de archivo y la entrada se redirige, FUNCTION /R leerá desde stdin.

 

/ZSobrescriba la lista de funciones existente con el contenido del archivo especificado (debe usarse con /R). FUNCTION /R /Z es 20 veces más rápido que FUNCTION /R, porque no tiene que verificar las funciones existentes ni agregar nuevas funciones al final de la lista.