Skrypty w powłoce UNIX: BASH, KSH czy TCSH?

W UNIX można spotkać różne interpretatory poleceń. Czym się różnią? Dlaczego nie mamy po prostu jednego? Przedstawmy je.

SH

Shell to oryginalny interpreter poleceń z 1977 roku, jest to domyślna powłoka dla systemu UNIX w wersji 7. Zaletą jest to, że jest dostępny na różnych platformach UNIX, co czyni go idealnym rozwiązaniem dla skrypty, aby były niezależne od systemu operacyjnego.

BASZKA

BASH (Bourne Again Shell) został napisany przez Briana Foxa jako domyślna powłoka dla systemów operacyjnych GNU/Linux i MAC OS. Zasadniczo była to powłoka na licencji GPL (SH).

KSH

Korn Powłoka napisana przez Davida Korna miała pierwotnie ulepszyć klasyczną powłokę o zarządzanie procesami i funkcje WYSIWYG, ale później zostały one dodane do oryginalnej powłoki. KSH jest domyślną powłoką dla systemów Solaris, AIX i kilku innych systemów UNIX.

CSH

Oryginalny C Shell z 1978 roku, który miał przypominać programowanie w C. Został zastąpiony przez TCSH.

TCSH

Tea Shell (ti Shell) to ulepszenie oryginalnego CSH z uzupełnianiem wierszy i edycją wiersza poleceń. Jest to standardowa powłoka dla platform opartych na BSD (Berkeley Software Distribution) UNIX.

ZSH

Powłoka Z ma najwięcej funkcji, w tym historię powłoki (która ostatecznie jest udostępniana wszystkim instancjom działającej powłoki), rozszerzone metaznaki powłoki, ulepszone pola, łatwiejszą edycję poleceń wielowierszowych i poprawki błędów.

Jeśli zamierzasz używać tylko Linuksa, polecam BASH. Jeśli chcesz używać (i skryptów) w Unixach, polecam SH.

Marián Knězek