Shift es un comando incorporado en bash que, después de ejecutarse, cambia/mueve los argumentos de la línea de comando a una posición a la izquierda. El primer argumento se pierde después de usar el comando shift. Este comando toma solo un número entero como argumento. Este comando es útil cuando desea deshacerse de los argumentos de la línea de comando que no son necesarios después de analizarlos.
Sintaxis:
shift n
Aquí, n es el número de posiciones por las que desea desplazar los argumentos de la línea de comandos hacia la izquierda. Si no especifica, se supone que el valor predeterminado de n es 1, es decir, el desplazamiento funciona igual que el desplazamiento 1.
Ejemplo: vamos a crear un archivo de script de shell llamado sampleshift.sh de la siguiente manera. El número total de argumentos de la línea de comandos está representado por $#. Use el siguiente comando para crear el archivo de script de shell deseado
vi sampleshift.sh
Ahora pega el siguiente código:
#!/bin/bash # total number of command-line arguments echo "Total arguments passed are: $#" # $* is used to show the command line arguments echo "The arguments are: $*" echo "The First Argument is: $1" shift 2 echo "The First Argument After Shift 2 is: $1" shift echo "The First Argument After Shift is: $1"
Ahora, para guardar el archivo, presione ESC y luego escriba «:x» sin comillas y presione Enter. Ahora para ejecutar el archivo, use el siguiente comando en la terminal de Linux
sh sampleshift.sh
Pero aquí tenemos que pasar argumentos de línea de comandos para que podamos usar el siguiente comando
sh sampleshift.sh G1 G2 G3 G4
Aquí, estamos pasando 4 argumentos de línea de comandos llamados G1, G2, G3 y G4. A continuación se muestra la captura de pantalla de la salida del uso del comando shift:
Publicación traducida automáticamente
Artículo escrito por palakbansal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA