GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué significa [correo electrónico protegido] en un script de shell?

$* se expande a todos los parámetros que se pasaron a ese script de shell.

$0 =nombre del script de shell

$1 =primer argumento

$2 =segundo argumento...etc

$# =número de argumentos pasados ​​a shellscript


Es fácil encontrar la respuesta por ti mismo:man bash/\$\* :

Parámetros especiales

El shell trata varios parámetros de forma especial. Estos parámetros solo pueden ser referenciados; la asignación a ellos no está permitida.

  • Se expande a los parámetros posicionales, comenzando desde uno. Cuando la expansión ocurre entre comillas dobles, se expande a una sola palabra con el valor de cada parámetro separado por el primer carácter del IFS variable especial. Es decir, "$*" es equivalente a "$1c$2c..." , donde c es el primer carácter del valor de IFS variable. Si IFS no está configurado, los parámetros están separados por espacios. Si IFS es nulo, los parámetros se unen sin que intervengan separadores.

Significa todos los argumentos pasados ​​al script o función, divididos por palabra.

Por lo general, es incorrecto y debe reemplazarse por "[email protected]" , que separa los argumentos correctamente.


Linux
  1. ¿Qué significa Ampersand al final de una línea de script de Shell?

  2. ¿Qué significan los símbolos mostrados por Ls -f?

  3. ¿Qué significa "rm is hash"?

  4. ¿Qué significa ${1+“[email protected]”} en un script de shell y en qué se diferencia de “[email protected]”?

  5. ¿Qué significa la sintaxis |&en lenguaje shell?

¿Qué significa chmod 777?

¿Qué significa ser "sh compatible"?

¿Qué significa `:-` en un script de Shell?

¿Gnu Parted Resizepart en script?

¿Qué es Shebang en Linux Shell Scripting?

No hay variable X11 DISPLAY - ¿qué significa?