
Lesley Fowler
0
2695
78
Zadowolony z używania powłoki bash w systemie Linux? A może wolisz wypróbować alternatywę? Do wyboru są tsch, fish, KornShell i Z Shell. Ale która z tych powłok Linuksa jest najlepsza?
Co to jest powłoka?
Zwykle, gdy piszesz aplikację, odbywa się to w języku wysokiego poziomu, który ludzie mogą zrozumieć. Przykładami są C #, Java, C ++ itp. Wierzcie lub nie, komputer widzi wszystko jako 1 jako 0 lub, jak powszechnie znany, kod binarny lub maszynowy Co to jest binarny? [Wyjaśniona technologia] Co to jest binarny? [Wyjaśnienie technologii] Biorąc pod uwagę, że binarność jest tak absolutnie fundamentalna dla istnienia komputerów, wydaje się dziwne, że nigdy wcześniej nie zajmowaliśmy się tym tematem - więc dzisiaj pomyślałem, że dam krótki przegląd tego, co binarne… .
Kompilator następnie przetłumaczy język wysokiego poziomu na plik binarny, taki jak plik wykonywalny. Ten plik binarny jest wykonywany w celu uruchomienia wspomnianej aplikacji. To jest bardzo ogólny obraz tego, co się dzieje, ale pamiętaj, że Twój komputer potrzebuje warstwy tłumaczącej między tym, co mu powiesz, a tym, jak to zrozumieć..
Powłoka to tak zwany tłumacz. Interpretator, podobnie jak kompilator, tłumaczy kod ludzki na kod maszynowy. Jedną z różnic jest to, że interpreter wykonuje tę jedną instrukcję naraz, w przeciwieństwie do kompilatora, który skanuje cały program i tłumaczy go jako całość na kod maszynowy.
Powłoka jest zatem interfejsem umożliwiającym interakcję z systemem operacyjnym (OS). Podczas wpisywania poleceń w powłoce, powłoka jest odpowiedzialna za interpretację tych poleceń i wywołanie magii. Operacje takie jak kopiowanie plików, przesyłanie potokowe, wyświetlanie plików są w zakresie uprawnień powłoki. Odpowiada również za zapamiętywanie historii poleceń i sprawdzanie, co przeszło ci przez głowę w czasie ewentualnego upojenia.
Aby znaleźć wszystkie powłoki dostępne w systemie, otwórz terminal i wpisz:
cat / etc / shells
Aby dowiedzieć się, jakiej powłoki aktualnie używasz, wpisz:
echo 0 USD
1. Bash
Przez milę najpopularniejsza powłoka wśród użytkowników Linuksa. Trudno nawet myśleć o pociskach, gdy Bourne-Again SHell (bash) nie jest częścią równania. Wiele dystrybucji Linuksa jest dostarczanych z domyślną powłoką bash, ponieważ bash jest domyślną powłoką GNU. Wydany w 1989 roku, ma za sobą kilka dekad zdrowego rozwoju.
Poprzednikiem Basha jest The Bourne Shell (sh), która jest jedną z oryginalnych powłok uniksowych. Jedną z atrakcyjnych funkcji dla programistów sh było to, że mogli przenosić swoje skrypty sh Co to jest skryptowanie powłoki i dlaczego powinieneś go używać Co to jest skryptowanie powłoki i dlaczego warto go używać Oprócz możliwości interaktywnego przyjmowania i wykonywania poleceń, powłoka może również wykonać polecenia zapisane w pliku. Nazywa się to skryptowaniem powłoki. W tym rozdziale omówimy podstawy skryptowania powłoki. bezpośrednio, aby uderzyć całkowicie niezmienione. Bash oferuje także kilka ulepszeń swojego poprzednika, takich jak uzupełnianie poleceń i historia poleceń.
Bash jest całkowicie szanowaną powłoką i często dokumentacja online zawsze zakłada, że go używasz. Jednak bash nie jest pozbawiony wad - o czym świadczy każdy, kto napisał skrypt bash obejmujący kilka wierszy! Nie chodzi o to, że nie możesz czegoś zrobić, ale o to, że nie zawsze jest szczególnie elegancko czytać i pisać. Bash prawdopodobnie zostanie tutaj przynajmniej na najbliższą przyszłość. Posiada bogatą bazę instalacyjną oraz brygady zwykłych i profesjonalnych użytkowników, którzy są już przyzwyczajeni do jego używania, i dziwactwa.
2. KornShell
Powszechnie znany jako ksh, KornShell jest alternatywną powłoką, która powstała w Bell Labs w latach 80. Ksh zaczął swoje życie jako oprogramowanie prawnie zastrzeżone de facto standard w komercyjnych jednorożcach i dlatego nie był dostępny dla Linuksa aż do 2000 roku. Nie ma wielu różnic między bash i ksh, ale każda z nich ma niewielkie zalety w stosunku do drugiej. Na przykład Ksh ma starą nową komendę cd. Jeśli byłeś w katalogu / Pobieranie / foo / bar /jeden/ foobar i musiałeś się dostać / Pobieranie / foo / bar /dwa/ foobar po prostu musisz uruchomić:
cd raz dwa
Weterani ksh będą opowiadać się za wyższością, wspominając o zaletach skryptu. Należą do nich między innymi lepsza składnia pętli, bardziej naturalne sposoby powtarzania poleceń oraz rzadko używane tablice asocjacyjne. W przypadku podstawowego wprowadzania bash jest podobny do ksh dla zaawansowanych skryptów, jednak z pewnością będzie to inne doświadczenie. Kolejną rzeczą, o której należy pamiętać, jest prośba o pomoc dla ksh online. Może to obejmować przebudzenie zaawansowanego użytkownika z jego snu, aby ci pomóc. W stosunku do bash, który niemal natychmiast dostarczy ci odpowiedzi!
Jeśli chcesz wypróbować ksh, możesz wpisać:
sudo apt install ksh ksh
3. Tcsh
Tcsh może prześledzić swoje korzenie od początków Uniksa. Zasadniczo jest to powłoka C (csh) z programowalnym uzupełnianiem wiersza poleceń, edycją wiersza poleceń i kilkoma innymi funkcjami. Tcsh jest domyślną powłoką dla systemów opartych na BSD, takich jak FreeBSD. Dużą zaletą tcsh jest język skryptowy, który powinien wyglądać bardzo znajomo dla każdego, kto programował w C. Tcsh jest godnym kandydatem do nauki, jeśli uważasz, że przede wszystkim programujesz w C Dlaczego programowanie w C jest wciąż warte nauki Dlaczego programowanie w C jest potrzebne Nadal warto się uczyć C nie jest martwym językiem. W rzeczywistości magazyn IEEE Spectrum uznał go za najlepszy język nr 2 w 2017 r. Oto pięć powodów. . To sprawia, że tcsh jest przydatny do tworzenia prototypów małych programów w języku C, bez pomieszania rzeczy, takich jak używane nawiasy. Ten problem występuje, jeśli ciągle przełączasz się między programowaniem C i skryptami powłoki.
Skrypty Tcsh są uwielbiane przez niektórych, a nienawidzone przez innych. Ale ma także inne funkcje, w tym dodawanie argumentów do aliasów i różne ustawienia domyślne, które mogą spodobać się w twoich preferencjach. Jedną z jego istotnych cech jest sposób działania automatycznego uzupełniania i uzupełniania historii. Po wyciągnięciu historii, pisząc historia. Tcsh wyświetli ponumerowaną listę poprzednich poleceń z bardzo wygodnym znacznikiem czasu. Możesz uruchomić dowolne polecenie, wpisując !n zastępując n odpowiednim numerem w wyświetlanej historii. Uzupełnianie zakładki Historia w tcsh polega na wpisaniu:
!za
To rozwija się do ostatniego polecenia, które rozpoczęło się na literę “za”. Dla porównania, w bashu musiałbyś pisać !a: p aby najpierw zobaczyć polecenie, a następnie !! wykonać to.
Aby spróbować tcsh, wpisz:
sudo apt install tcsh tcsh
4. Ryba
Spośród całej powagi Linuksa, zespół fish miał w swoim projekcie poczucie humoru. Na ich stronie internetowej brzmi jak język “Wreszcie powłoka wiersza poleceń z lat 90” - ryba (“faprzyjacielsko jabrak działania shłokieć”) został opracowany w 2005 r. Poza reklamą “Chwalebny kolor VGA,” są pewne ulepszenia w stosunku do innych powłok. Polecenia o niepoprawnej składni będą wyświetlane w kolorze czerwonym, a poprawna w niebieskim. Ponadto istnieją bogate zestawy uzupełnień tabulatorów, takie jak sugestie autouzupełniania oznaczone kolorami, które są oparte na Twojej historii.
Fish może się też pochwalić wykonywaniem poleceń na podstawie stron podręcznika na komputerze. Jak skracać strony podręcznika do czytelnych objaśnień w systemie Linux i macOS Jak skracać strony podręcznika w czytelnych objaśnieniach w systemach Linux i macOS MacOS i Linux mają przydatne polecenie, które „man” wyświetla ręczne objaśnienia poleceń terminalu. Ponieważ są one często długie, dlaczego nie użyć narzędzia tldr, aby skrócić je do czytelnych fragmentów? . Więc jeśli właśnie zainstalowałeś nowy program i musisz przyzwyczaić się do jego składni, fish pobierze składnię ze strony podręcznika i doda ją do twoich sugestii autouzupełniania. Schludny! Jeśli chcesz lepiej zapoznać się z linią poleceń, ryby mogą być świetnym miejscem do rozpoczęcia.
Aby wypróbować, na czym polega ryba, wpisz:
sudo apt install fish fish
5. Z Shell
Wielu uważa, że pozostawia to najlepszą powłokę na koniec, co byłoby całkowicie zrozumiałe. Zsh ma podobieństwa do bash i ksh i zawiera wiele funkcji w nich zawartych, a także tcsh. Niektóre przydatne funkcje zsh obejmują nawigowalną listę autouzupełniania. W przeciwieństwie do bash, który jedynie wyświetla listę wszystkich dostępnych poleceń i zachęca do wpisania go ręcznie. Globowanie w zsh jest niewytłumaczalnie przydatne. Pisanie na maszynie:
vim / u / l / b / a
Automatycznie otwiera plik:
/usr/local/bin/autoupdate.sh
Korekta pisowni w zsh jest znacznie lepsza niż bash. W Płyta CD polecenie bash może poprawić maksymalnie jeden znak. Zsh można natomiast skonfigurować do autokorekty 10 błędów ortograficznych w jednym słowie. Zsh zmienia także historię wiersza poleceń. Jest to niezwykle przydatne dla użytkowników, którzy spędzają nadmiernie dużo czasu na terminalu. Zsh w magiczny sposób dzieli się historiami na terminalach, dzięki czemu sesje na wielu terminalach są dziecinnie proste.
Zsh może zająć trochę czasu, aby skonfigurować przy pierwszym użyciu, jeśli nie korzystasz z domyślnej konfiguracji. Aby spróbować, wpisz:
sudo apt install zsh zsh
Która skorupa jest dla mnie?
Fakt, że te opcje są dostępne, jest genialny. Są wglądem w historię samego informatyki, w której programiści postanowili, że chcą zrobić wszystko po swojemu, a ostatecznie uwolnią świat.
Zasadnicze różnice między tymi powłokami można znaleźć w składni skryptów. Każda powłoka ma określony zestaw niuansów, które oddzielają je od siebie. Na obecnym etapie bash dominuje pod względem udziału w rynku, co znacznie ułatwia znalezienie pomocy. Bash jest po prostu najlepszym wszechstronnym urządzeniem spełniającym potrzeby wszystkich oprócz najbardziej zaawansowanych użytkowników.
Jakiej powłoki obecnie używasz? Czy próbowałeś innej powłoki niż bash? Co kochasz lub czego nienawidzisz w swojej obecnej powłoce? Podziel się swoimi przemyśleniami w komentarzach poniżej!
Źródło obrazu: spaxiax / Depositphotos