Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| bourne_shell [2022/09/17 18:39] – peron | bourne_shell [2026/04/21 16:05] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| - | ===== Shell de Bourne ===== | + | ====== Shell de Bourne |
| - | El Bourne Shell fue un [[intérpretes de comandos|intérprete de comandos]] desarrollado por Stephen Bourne | + | El Bourne Shell fue un [[intérpretes de comandos|intérprete de comandos]] desarrollado |
| - | Aunque podía | + | Aunque podía |
| + | > El Shell original de Bourne no suele utilizarse más, pero todos los sistemas POSIX actuales suelen incorporar alguna implementación moderna derivada de esta shell **sh** por razones de compatibilidad absoluta y de ejecución de [[script|guiones de programación]]. | ||
| - | > Todos los sistemas POSIX actuales suele incorporarse una versión moderna de esta shell mínima por razones de compatibilidad absoluta y de ejecución de [[script|guiones | + | ==== Historia ==== |
| + | El [[sh|Shell de Thompson]] típico | ||
| + | Para ello desarrolló a lo largo de 1977 una versión que no retuviese compatibilidad con el de Thompson, inspirándose en las modalidades de programación utilizadas por su lenguaje preferido por entonces, el ALGOL68, e incorporando macros de programación. Para 1979 su shell (que también recibió el nombre de fichero **sh** en la [[versiones de unix#unix septima edición|unix V7]]), reemplazó al vetusto de Thompson. | ||
| + | A principios de la década de 1980 el shell de Bourne era uno de los más prometedores.. En vista de sus posibilidades, | ||
| + | =====Reglas===== | ||
| + | |||
| + | La antigua shell de Bourne tienen reglas universales que inpirarían a [[Bash]]. Originalmente, | ||
| + | ===Sintaxis=== | ||
| + | // | ||
| + | // | ||
| + | // | ||
| + | |||
| + | <code bash> | ||
| + | comando-simple | ||
| + | (lista-de-comandos) | ||
| + | for nombre do lista-de-comandos donde | ||
| + | for nombre in palabra... do lista-de-comandos done | ||
| + | while lista-de-comandos do lista-de-comandos done | ||
| + | until lista-de-comandos do lista-de-comandos done | ||
| + | case palabra in case-part... esac | ||
| + | if lista-de-comandos then lista-de-comandos else-parte fi | ||
| + | </ | ||
| + | |||
| + | ===Sintáctica=== | ||
| + | ^ Carácter ^ Significado ^ | ||
| + | | '' | ||
| + | | ''&&'' | ||
| + | | '' | ||
| + | | '';'' | ||
| + | | '';;'' | ||
| + | | ''&'' | ||
| + | | ''< | ||
| + | | ''<'' | ||
| + | | ''< | ||
| + | | ''>'' | ||
| + | | ''< | ||
| + | |||
| + | ===Patrones=== | ||
| + | Los patrones de coincidencia pueden aplicarse mediante | ||
| + | * '' | ||
| + | * ''?'': | ||
| + | * '' | ||
| + | |||
| + | ===Sustitución=== | ||
| + | |||
| + | La shell de bourne sustituye de este modo | ||
| + | * '' | ||
| + | * ''< | ||
| + | |||
| + | ===Citado=== | ||
| + | El citado se puede hacer con: | ||
| + | * ''< | ||
| + | * ''< | ||
| + | * ''< | ||
| + | |||
| + | Ver: [[Tutorial de Shell de Bourne]] | ||
