GNU/Linux >> Tutoriales Linux >  >> Linux

Diferencia entre comandos en bash script y comandos en terminal

Su terminal ejecuta un shell (probablemente bash ), que es el que solicita tus comandos y los ejecuta.

Además de este modo interactivo, también puede usar su shell para ejecutar comandos desde un archivo. Para ejecutar los comandos en su archivo, puede llamar al shell directamente como bash script o puede comenzar su archivo con un "shebang" #!/bin/bash y hacerlo ejecutable (chmod +x script ). Luego puede tratar el script como un binario y ejecutarlo, por ejemplo, como ./script o ponlo en un lugar donde tu caparazón lo esté buscando. (echo $PATH )

Lo más probable es que tanto su shell interactivo como el shell utilizado para ejecutar sean bash .Desde la perspectiva de un "primer día de aprendizaje de Linux", bash funciona exactamente igual en ambos modos. - Mucho más tarde podrías tropezar con ligeras diferencias. Si realmente desea conocer en detalle, le sugiero que lea man bash y busque lugares que mencionen "interactivo". (Puede buscar una página de manual, presionando / .)

Una cosa importante a tener en cuenta es que el script se ejecuta como un nuevo proceso. Esto significa especialmente que las variables configuradas en el script no son visibles en el shell de llamadas.

$ export a=1
$ echo $a
1
$ bash -c 'echo $a;a=2;echo $a' # change the value in a script
1
2
$ echo $a # value not changed here
1
$ 

Sin la exportación a ni siquiera es visible para el script interno.


Linux
  1. Diferencia entre los comandos "su" y "su -" en Linux

  2. ¿La diferencia exacta entre un 'terminal', un 'shell', un 'tty' y una 'consola'?

  3. ¿La diferencia entre los comandos Halt y Shutdown?

  4. ¿La diferencia entre [[ $a ==Z* ]] y [ $a ==Z* ]?

  5. ¿Diferencia entre las variables de Shell que se exportan y las que no están en Bash?

¿Cuál es la diferencia entre Shell de inicio de sesión y sin inicio de sesión?

Diferencia entre comillas simples y dobles en Bash Shell

¿Cuál es la diferencia entre una consola, una terminal y un shell?

¿Cuál es la diferencia entre &> y >&en bash?

Diferencia entre pts y tty

Diferencia entre los comandos 'ifconfig' e 'ip'