Zsh
Z shell software | |
---|---|
![]() | |
![]() | |
Genere | Shell |
Sviluppatore | Peter Stephenson, et al. |
Data prima versione | 1990 |
Ultima versione | 5.9 (14 maggio 2022) |
Sistema operativo | Multipiattaforma |
Linguaggio | C |
Licenza | MIT-like (licenza libera) |
Sito web | zsh.sourceforge.io/ |
Modifica dati su Wikidata · Manuale |
La Z shell (zsh) è una shell che può essere utilizzata come linea di comando interattiva e come un potente interprete per script di shell.
Zsh può essere vista come un'estensione della Bourne shell dotata di numerose migliorie, fra le quali alcune caratteristiche mutuate da bash, ksh e Tcsh.
È usata come shell di default di macOS a partire da macOS Catalina.[1]
Storia
La prima versione della Z shell fu scritta da Paul Falstad nel 1990, mentre era studente all'Università di Princeton[2] e fu rilasciata su Usenet il 15 dicembre dello stesso anno,[3][4] nonostante ora non venga più da lui mantenuta.[2] L'attuale maintainer principale è Peter Stephenson.[5]
Il nome zsh deriva dal professore di Yale Zhong Shao, allora un assistente presso l'Università di Princeton. Paul Falstad pensò che il nome di login di Shao, "zsh", fosse un buon nome per una shell.[4]
Funzionalità
![](http://upload.wikimedia.org/wikipedia/commons/thumb/9/99/Zsh-new-user.png/220px-Zsh-new-user.png)
Alcune funzionalità di zsh sono[2], a titolo esemplificativo e non esaustivo:
- Autocompletamento programmabile che aiuta l'utente ad inserire sia le opzioni che gli argomenti per la maggior parte dei comandi più utilizzati, con supporto pre-attivato per svariate centinaia di comandi
- Condivisione della cronologia dei comandi fra tutte le shell attive
- Funzionalità estesa di globbing che consente di specificare i nomi file senza la necessità di utilizzare un programma esterno quale find
- Manipolazione avanzata di variabili/array
- Modifica di comandi multi-linea in un singolo buffer
- Controllo ortografico
- Varie modalità di compatibilità, ad esempio zsh può emulare il comportamento di una Bourne shell quando eseguita come
/bin/sh
- Temi per i prompt, compresa l'abilità di posizionare parti del prompt sul lato destro dello schermo e di nasconderle automaticamente quando si sta inserendo un comando lungo
- Moduli caricabili, che provvedono, fra le altre cose, a fornire: interfaccia TCP completa, controlli per Socket di dominio locale, un client FTP e funzionalità matematiche estese
- Possibilità di personalizzazione
Ad attestare le vaste funzionalità di questa shell vi è la famosa prima frase della manpage unix della shell, la cui traduzione è interpretabile come "A causa delle molte funzionalità di zsh, il manuale è stato suddiviso in numerose sezioni", riportando poi un elenco di diciassette punti.
Note
- ^ (EN) Use zsh as the default shell on your Mac, su Apple Support. URL consultato il 22 maggio 2020.
- ^ a b c Z-Shell Frequently-Asked Questions, su zsh.sourceforge.net. URL consultato il 22 maggio 2020.
- ^ Paul Falstad, zsh - a ksh/tcsh-like shell (part 1 of 8), su alt.sources, 15 dicembre 1990. URL consultato il 22 maggio 2019.
- ^ a b The Z-Shell (ZSH) Lovers' Page, su guckes.net. URL consultato il 22 maggio 2020.
- ^ zsh: 2 Introduction, su zsh.sourceforge.net. URL consultato il 22 maggio 2020.
Bibliografia
- Oliver Kiddle, Peter Stephenson e Jerry Peek, From Bash to Z Shell: Conquering the Command Line, Apress, 2004, ISBN 978-1-59059-376-9.
Voci correlate
- Shell (informatica)
- Linguaggio di scripting
- Bash
- Zshrc
Altri progetti
Altri progetti
- Wikimedia Commons
Wikimedia Commons contiene immagini o altri file su Z shell
Collegamenti esterni
- (EN) Sito ufficiale, su zsh.sourceforge.io.
- (EN) Zsh, su SourceForge.
- Zsh, su packages.debian.org.
- Repository sorgenti di Zsh, su sf.net.
- (EN) Zsh, su Free Software Directory.
- (EN) Archivio della Mailing List, su zsh.org.
- (EN) ZSH Wiki, su zshwiki.org. URL consultato il 18 luglio 2012 (archiviato dall'url originale il 6 gennaio 2009).
- (EN) Oh My Zsh Opensource Project, su ohmyz.sh.
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/12/Nuvola_apps_emacs.svg/25px-Nuvola_apps_emacs.svg.png)