Bash scripting - introduzione: differenze tra le versioni

m
mNessun oggetto della modifica
 
Riga 14: Riga 14:
GNU '''bash''' (''Bourne-Again SHell'') è una delle shell derivate da '''sh''' (la ''Bourne SHell'', progettata da Stephen Bourne), la prima progettata per lo scripting. Bash è la scelta di default per l'uso interattivo su Debian e molte distribuzioni GNU/Linux, il che la rende una delle più diffuse, e incorpora molte nuove funzionalità rispetto a '''sh''', alcune anche derivanti da altre shell ('''csh''' e '''ksh''').
GNU '''bash''' (''Bourne-Again SHell'') è una delle shell derivate da '''sh''' (la ''Bourne SHell'', progettata da Stephen Bourne), la prima progettata per lo scripting. Bash è la scelta di default per l'uso interattivo su Debian e molte distribuzioni GNU/Linux, il che la rende una delle più diffuse, e incorpora molte nuove funzionalità rispetto a '''sh''', alcune anche derivanti da altre shell ('''csh''' e '''ksh''').


Quando si scrivono script con questa shell bisogna sapere che le nuove funzionalità comportano un costo, in termini di portabilità, rispetto agli script che si limitano alla sola sintassi prevista da '''POSIX''' (''Portable Operating System Interface''), una famiglia di standard che specificano come scrivere applicazioni funzionanti su tutti i sistemi Unix e che per la shell prescrive le sole istruzioni supportate da '''sh'''. Infatti uno script scritto per '''sh''' secondo lo standard ''POSIX'' sarà supportato anche da altri sistemi operativi della famiglia Unix e Unix-like che non hanno '''bash''' installato di default, come per esempio quelli della famiglia *BSD, a patto che anche i comandi esterni e le loro opzioni siano scelte secondo lo standard.
Quando si scrivono script con questa shell bisogna sapere che le nuove funzionalità comportano un costo, in termini di portabilità, rispetto agli script che si limitano alla sola sintassi prevista da '''[[POSIX]]''' (''Portable Operating System Interface''), una famiglia di standard che specificano come scrivere applicazioni funzionanti su tutti i sistemi Unix e che per la shell prescrive le sole istruzioni supportate da '''sh'''. Infatti uno script scritto per '''sh''' secondo lo standard ''POSIX'' sarà supportato anche da altri sistemi operativi della famiglia Unix e Unix-like che non hanno '''bash''' installato di default, come per esempio quelli della famiglia *BSD, a patto che anche i comandi esterni e le loro opzioni siano scelte secondo lo standard.


Inizialmente '''bash''' era usata anche per gli script di sistema (con <code>/bin/sh</code> che era un link simbolico a <code>/bin/bash</code>), ma per questa funzione è stata rimpiazzata da '''dash''' (''Debian Almquist SHell''): più veloce, con meno dipendenze di librerie e aderente più strettamente a ''POSIX''.
Inizialmente '''bash''' era usata anche per gli script di sistema (con <code>/bin/sh</code> che era un link simbolico a <code>/bin/bash</code>), ma per questa funzione è stata rimpiazzata da '''dash''' (''Debian Almquist SHell''): più veloce, con meno dipendenze di librerie e aderente più strettamente a ''POSIX''.
3 581

contributi