Tengo algunas dificultades para entender qué es un guión. Hasta donde tengo entendido, es un conjunto de comandos en un shell. ¿Y cuál es la diferencia entre un script bash y un script shell? ¿Alguien puede explicar este concepto?
Respuesta1
dehttp://en.wikipedia.org/wiki/Shell_script:
Un script de shell es un programa informático diseñado para ser ejecutado por el shell [Unix], un intérprete de línea de comandos. Los distintos dialectos de los scripts de shell se consideran lenguajes de scripting.
En otras palabras: un script bash es un script shell, pero un script shell no necesariamente es un script bash.
A diferencia de una aplicación, un script generalmente se ejecuta como una serie de comandos, de la A a la Z (aunque puede ejecutarse en un bucle). Un script apenas requiere intervención del usuario una vez iniciado y, por lo general, está escrito para realizar un solo trabajo.
Si bien las aplicaciones modernas generalmente se escriben en clases para cumplir con una gama más amplia de tareas, dependiendo de lo que decida el usuario, un script ejecuta principalmente sus comandos de arriba a abajo, para salir una vez finalizado el trabajo.
Existen numerosos lenguajes de scripting, de los cuales bash es solo uno. Por mencionar algunos que se utilizan en Linux:pitón,intento,perla,awk,sed
Respuesta2
La diferencia clásica entre scripts y programas es que los scripts se interpretan mientras que los programas se compilan y se proporcionan en forma ejecutable.
La definición es confusa hoy en día, ya que puedes compilar scripts si realmente lo deseas (por ejemplo: PHP compilado por Facebook) y los lenguajes de programación modernos usan interpretación en niveles inferiores (por ejemplo: Java con JVM, .NET e IL).
Los scripts de Shell son scripts que utilizan el lenguaje de comandos de Shell (sh). sh es una especificación que tiene múltiples implementaciones. bash comenzó como una implementación de sh pero creció hasta ser bastante diferente, aunque admite un modo de compatibilidad con sh.