Secuencia de comandos de línea de comandos

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 8 de marzo de 2016; las comprobaciones requieren 9 ediciones .

Script de línea de comandos , o script de shell ( script de shell en inglés  ): un programa ejecutado por el shell de comandos del sistema operativo. El término se aplica más comúnmente a los scripts escritos para Bourne shell , un  programa de shell para sistemas UNIX. [una]

En Unix

En los sistemas operativos similares a Unix, no se requiere una extensión de nombre de archivo, pero la extensión .sh está reservada para scripts de shell. Las operaciones más sencillas que realizan estos scripts son la salida de texto y las operaciones básicas con archivos.

Para ejecutar el script, ingrese la ruta al archivo del script y los argumentos en el emulador de terminal con el shell ejecutándose (por ejemplo, ./myscript.sh -switches—switch—file1 file2). Los argumentos se escriben con un espacio. Entre los desarrolladores de scripts, existe una convención para dar al usuario la capacidad de cambiar el modo del script exclusivamente a través de argumentos que comienzan con un guión: un solo guión para los argumentos de un carácter (en este caso, después del guión, se pueden especificar varias opciones en una vez, por ejemplo -abcd es equivalente a -a -b -c -d), o un guión doble para argumentos de dos o más caracteres (por ejemplo, --help, --switch-with-very-long-name). Un guión doble rodeado de espacios indica que los siguientes tokens no son argumentos. [2] Para facilitar el seguimiento de estas convenciones, muchos sistemas similares a UNIX incluyen el programa getopt para simplificar el análisis de argumentos. [3] También es una práctica común imprimir ayuda cuando se pasa el argumento --help. Otra forma de obtener ayuda (para scripts estándar) es usar la utilidad man .

Un ejemplo de un script que convierte imágenes .jpg a formato .png:

#!/bin/bash para jpg ; # use $jpg para cada nombre de archivo a su vez png = " ${ jpg %.jpg } .png" # obtenga la versión PNG del nombre de archivo .jpg de .png echo converting " $jpg " ... # mensaje al usuario si convertir " $jpg " jpg.a.png ; luego # use la utilidad de conversión para crear un archivo PNG temporal mv jpg.to.png " $png " # si tiene éxito, cambie el nombre del archivo PNG temporal al nombre deseado else # ...de lo contrario imprima un mensaje de error echo 'jpg2png: error : resultado guardado en "jpg.to.png".' > & 2 salir 1 fi # terminar "si" hecho # terminar "para" echo "Convertido con éxito" # mensaje de éxito salir 0

En Windows

En Windows, los scripts de línea de comandos existen como archivos por lotes y se escriben en un archivo con una extensión .bat , .cmd o .btm. No se requiere la compilación u otro procesamiento especial del archivo para ejecutarlo: basta con escribir su código y guardar el archivo de texto como un lote .

Enlaces

  1. Kernighan, Brian W. & Pike, Rob (1984), 3. Uso de Shell, El entorno de programación UNIX , Prentice Hall, Inc., p. 94, ISBN 0-13-937699-2 
  2. Convenciones de UNIX para argumentos de línea de comandos Archivado el 22 de mayo de 2016 en Wayback Machine (Bruce Barnett's Bourne Shell Grymoire )
  3. Comprobación de argumentos opcionales Archivado el 22 de mayo de 2016 en Wayback Machine (Bruce Barnett's Bourne Shell Grymoire )