GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cuál es el uso de $# en Bash?

De https://www.gnu.org/software/bash/manual/html_node/Special-Parameters.html

$# Se expande al número de parámetros posicionales en decimal.

$? Se expande al estado de salida de la canalización en primer plano ejecutada más recientemente.


De Learn Bash en Y minutos:

# Builtin variables:
# There are some useful builtin variables, like
echo "Last program's return value: $?"
echo "Script's PID: $$"
echo "Number of arguments passed to script: $#"
echo "All arguments passed to script: [email protected]"
echo "The script's name: $0"
echo "Script's arguments separated into different variables: $1 $2..."

$# muestra el número de argumentos del script$? muestra el valor de retorno del último script

sobre argumentos:echo "ARG[$#]" antes de if y luego ejecute el script como

script.sh 1 

la salida será

ARG[1]
Usage: g old-pattern new-pattern filename

y así sucesivamente

la salida de $? también podría usarse en la línea de comando:

#shell>ls
file1.txt        g                inpu             nodes_list
#shell>echo $?
0

#shell>ls FileNameNotFound
ls: FileNameNotFound: No such file or directory
#shell> echo $?
1

Linux
  1. ¿Cuál es el propósito de la palabra clave "do" en Bash For Loops?

  2. ¿Qué son los separadores de palabras de Readline?

  3. ¿Cómo puedo encontrar la versión de Fedora que uso?

  4. ¿Cuál es la forma correcta de usar inotify?

  5. ¿Qué se supone que debe hacer el comando de exportación en Linux?

Cómo usar el comando de lectura Bash

¿Qué es el Shell en Linux?

Cómo usar el comando echo en Bash Scripts en Linux

¿Qué es Zsh? ¿Deberías usarlo?

¿Cuál es el uso de LLVM en las cadenas de herramientas de Android NDK?

¿Cuál es la forma más rápida de ejecutar un script?