A Unix héj egy olyan héj, amelyet az Unix és a Unix operációs rendszerekhez terveztek, és amely hozzáférést biztosít a belső operációs rendszer szolgáltatásaihoz. A konzolról vagy a terminálról elérhető parancssori felület formájában jelenik meg . A felhasználó parancsokat ad ki szöveges bejegyzésként, amelyet a shell hajt végre. A különböző Microsoft Windows operációs rendszerekben az analóg program a command.com vagy a cmd.exe .
A Unix típusú operációs rendszerek legtöbbször héjjal rendelkeznek. Eredetileg a parancsértelmező alapértelmezés szerint az sh volt , amely sok változatot adott életre, beleértve a csh-t , tcsh-ként vagy ksh-ként vagy rc- ként kiterjesztve ... De manapság a sh , ksh és csh ihlette bash a legnépszerűbb shell, bár vannak más shell tolmácsok, például zsh vagy ash .
Az első héj a Thompson-héj (in) 1971-ben jelent meg az Unix első verziójával, amelyet Ken Thompson , az Unix egyik alkotója írt . Ezt a Bourne-shell váltotta fel , amelyet Stephen Bourne írt 1977-ben a Unix 7-es verziójához .
1978-ban Bill Joy , akkor a Berkeley-i Kaliforniai Egyetem hallgatója létrehozta a csh (C shell) kifejlesztését , amelynek szintaxisát a C nyelv rendje ihlette. A csh modernebb verziója ekkor jelenik meg tcsh néven .
A Korn héjat (ksh) 1983-ban adta ki David Korn . Kompatibilis a Bourne héjjal , átveszi a csh egyes funkcióit, és fejlettebb szkriptfunkciókat ad hozzá, amelyek fejlettebb nyelveken érhetők el, mint például a Perl .
A Bourne-Again héj (bash) 1988-ban jelent meg. Brian Fox írta a Free Software Foundation számára a GNU projekt részeként . Ez a héja a Unix számos ingyenes megvalósításának , például a GNU / Linux rendszereknek . Kompatibilis a Bourne-héjjal, amelynek ingyenes megvalósítását szánják.
Paul Falstad 1990-ben alapította a zsh-t , miközben a Princetoni Egyetem hallgatója volt . Ez a héj átveszi a bash , csh , tcsh legpraktikusabb funkcióit .
A héjak lehetővé teszik az átirányításokat. Az átirányítás a parancs bemenetét vagy kimenetét egy másik parancsra vagy fájlra irányítja át.
Szintaxis:
commande > fichierA parancs meghívásának eredménye commandea fájlba kerül fichier, felülírva az előző tartalmat.
Példa:
$: cat file Welcome $: echo "Hello world" > file $: cat file Hello worldSzintaxis:
commande >> fichierA parancs meghívásának eredménye commandea fájlba kerül fichier, a már meglévő adatok nyomán.
Példa:
$: cat file Welcome $: echo "Hello world" >> file $: cat file Welcome Hello worldSzintaxis:
commande < fichierA parancs commandea fájl tartalmát olvassa el, fichierahelyett, hogy a normál bemeneten (billentyűzeten) olvasna.
Példa:
$: cat < file WelcomeSzintaxis:
commande << ENDA parancs commandemindaddig normál bemeneten fog olvasni, amíg a kettős átirányítást követő szóra nem kerül.
Példa:
$: cat << TOTO ? foo ? bar ? moomoo ? TOTO foo bar moomooSzintaxis:
commande_1 | commande_2A parancs eredménye át commande_1lesz irányítva a második parancs bemenetére commande_2.
Példa:
$: echo "Hello world" | grep -o "Hello" HelloSH | ksh | csh | tcsh | bash | zsh | |
---|---|---|---|---|---|---|
/etc/.login | Belépés | Belépés | ||||
/etc/csh.cshrc | Igen | Igen | ||||
/etc/csh.login | Belépés | Belépés | ||||
~ / .tcshrc | Igen | |||||
~ / .cshrc | Igen | Igen | ||||
~ / etc / ksh.kshrc | int. | |||||
/etc/sh.shrc | int. | |||||
$ ENV (általában ~ / .kshrc) | int. | int. | int. | |||
~ / .login | Belépés | Belépés | ||||
~ / .logout | Belépés | Belépés | ||||
/ etc / profile | Belépés | Belépés | Belépés | Belépés | ||
~ / .profil | Belépés | Belépés | Belépés | Belépés | ||
~ / .bash_profile | Belépés | |||||
~ / .bash_login | Belépés | |||||
~ / .bash_logout | Belépés | |||||
~ / .bashrc | int. + n / bejelentkezés | |||||
/ etc / zshenv | Igen | |||||
/ etc / zprofile | Belépés | |||||
/ etc / zshrc | int. | |||||
/ etc / zlogin | Belépés | |||||
/ etc / zlogout | Belépés | |||||
~ / .zshenv | Igen | |||||
~ / .zprofile | Belépés | |||||
~ / .zshrc | int. | |||||
~ / .zlogin | Belépés |