Amiga Minus 1/2001 - Niekomercyjny Magazyn Użytkowników Komputerów Amiga
  Wydanie internetowe Nr 1, Marzec 2001  

 Okładka
 Przełamując schematy
 Prawa autorskie
 Stopka redakcyjna

 Amiga Inc. zabija Amigę?
 Amiga Inc. w ocenie Polaków

 Jay Miner, ojciec Amigi
 Amiga w Gazecie Wyborczej
 Opinie
 Zamiast narzekać na piractwo

 Lato, lato...
 Amiga-fiction

 Urban Mueller
 Marcel Beck

 Pirackie oprogramowanie
 Ile za oryginalny program?
 Jakie programy do Internetu?
 Zdania o firmie Elbox

 Gwóźdź do trumny
 Dobra robota
 Najlepsi na scenie

 ZShell - z Unixa na Amigę

 Świat gier tekstowych
 Wojny rdzeniowe
 HArbiter


Nieodłącznym elementem AmigaOS jest katalog C, składający się z kilkudziesięciu komend-programów. Wykonywanie jakiegokolwiek skryptu dosowego wiąże się z wielokrotnym wczytywaniem komend z tegoż katalogu. Używając ZShella możemy skasować dziesiątki zalegających w systemie programików. Ten 35-kilobajtowy program zawiera w jednym pliku udoskonalone odpowiedniki standardowych komend dosowych, w tym wiele nowych rozwiązań. Całość oprawiona jest w najwygodniejszy ze znanych interfejs shellowy. Można więc także wyrzucić wynalazki typu KingCon czy inne nakładki, tu i ówdzie ulepszające shella.

    Autorzy ZShella wzorowali się na rozwiązaniach unixowych, gdzie bezpośrednie operacje na plikach oparte są na wydawaniu poleceń z poziomu klawiatury, a komendy przekazywane systemowi z wiersza poleceń mają tak funkcjonalny charakter, jak niejeden system bazujący na oknach i ikonach. Opracowany shell jest na tyle wygodny, że można nim robić wszystkie możliwe operacje na plikach i systemie. Nawet największy przeciwnik amigowego DOS-a przekona się o wygodzie, jaką niesie ze sobą praca z shellem o niebo lepszym od systemowego interpretera poleceń, połatanego nakładkami ściągniętymi z Aminetu.

INSTALACJA

    Program wystarczy po prostu uruchomić. Do rzucających się na pierwszy rzut oka zmian należy wyświetlanie ścieżki dostępu do aktualnego katalogu (np. "work1:Progs/mathX>" zamiast "1>"). Informacje pojawiające się w oknie nie są już jednokolorowe, nazwy plików i katalogów mają odmienny kolor, podobnie jak komunikaty shellowe. Wbudowane liczne skróty klawiaturowe pozwalają na modyfikowanie wprowadzanych sekwencji wzorem udogodnień znanych z edytorów tekstów: skok kursora na początek poprzedniego wyrazu, szybkie kasowanie zawartości okna, natychmiastowy dostępu do historii wprowadzanych wcześniej poleceń, możliwość przypisywania dowolnych sekwencji klawiszom funkcyjnym, wszystko w pełni konfigurowalnie. Obecność różnorodnych separatorów pozwala na wykonywanie z poziomu jednej linii wielu poleceń oraz swobodne stosowanie parametrów, czy to w postaci liczb zapisanych w systemie szesnastkowym, czy zmiennych lub wyrażeń matematyczno-logicznych (EVAL). Okazuje się, że nie tylko system Amigi jako taki można dopasować do potrzeb jego użytkownika, lecz także i odstraszającego wielu użytkowników shella.

WSPÓŁPRACA Z SYSTEMEM

    ZShell współpracuje z systemem, dając użytkownikowi dostęp do jego zasobów. W każdej chwili można przerwać wskazany task (BREAK), sprawdzić listę używanych bibliotek, wykorzystywanych przerwań i uruchomionych programów (SHOW) lub włączyć programowe linki (MAKELINK) pozwalające zastępować, w zależności od potrzeb, jedne programy drugimi. Przejrzyście wygląda przekierowywanie danych z lub do shella, na przykład gdy chcemy, aby dany komunikat pojawiał się nie w okienku "output", lecz jako dokument PPMore czy dane systemowego SAY.

OPERACJE NA PLIKACH

    Ulepszone operacje na plikach to jedna z najważniejszych cech ZShella. Nie dość, że znane wcześniej komendy zostały wzbogacone o sterowane parametrami nowe właściwości, to działają one o wiele szybciej. Do ciekawostek należy przeglądarka plików tekstowych (MORE), posiadająca możliwość przewijania tekstu we wszystkie strony gdy jest on większy niż otwarte okno shella, oraz SEARCH, przeszukujący wskazany plik w poszukiwaniu podanego ciągu bajtów. Sprawnie działa dopisywanie końcówek nazw plików i katalogów, co następuje po naciśnięciu klawisza TAB, a aliasy można wreszcie zapętlać oraz wiązać ze sobą parametrami i zmiennymi. LIST, odpowiednik komendy DIR, pokazuje ukryte pliki, ich komentarze i pozostałe dane. Można do woli używać "*" zamiast "#?", co do tej pory było marzeniem posiadaczy systemów niższych niż 3.1, teraz możliwe nawet na A500 z systemem 1.3, choć należy zaznaczyć, że część komend ZShella wymaga systemu w wersji co najmniej 2.0.

ZSHELL A WORKBENCH

    Autorzy programu nie zapomnieli o współpracy z Workbenchem. Przy pomocy jednej komendy tworzymy dowolnego typu ikonę, zawartość tekstową okna możemy zaznaczyć, skopiować i wkleić do innego programu, a ikona przeciągnięta do ZShella z dowolnego workbenchowego okna spowoduje pojawienie się jej nazwy w wierszu poleceń.

WYKONYWANIE SKRYPTÓW

    Ponieważ ZShell jest w pełni kompatybilny z systemowym shellem, więc przy pomocy rozkazu EXECUTE może wykonywać dowolne skrypty dosowe. Instrukcję tą możemy także używać do uruchamiania skryptów zshellowych, wykorzystujących zalety macierzystego programu. Będąc w posiadaniu doświadczalnie zdobytych dowodów, świadczących o dużo większej szybkości działania komend ZShella od poleceń systemowych, możemy zrzucić wykonywanie wszystkich skryptów na jego barki. Wykonując z jego pomocą skrypt startowy Amigi skracamy czas wczytywania systemu o połowę, w moim przypadku z piętnastu do siedmiu sekund, kiedy to przy każdym wykonywanym wierszu sekwencji nie musi być uruchamiany coraz to nowy program z katalogu C. Nie tylko oszczędzamy w ten sposób czas, ale i nerwy, bowiem dźwięki wydawane przez twardy dysk podczas wykonywania bardziej skomplikowanych skryptów są mniej słyszalne.

PODSUMOWANIE

    Zaskakujący jest brak popularności tego programu wśród społeczności amigowej, która łata system dziesiątkami programów i programików, mając wszystko pod nosem zawarte w jednym niewielkim programie. Wrzucając ZShella do systemu możemy pozbyć się już niepotrzebnych i zabierających miejsce COPY, MAKEDIR czy AVAIL, a tworząc dyskietkę startową nie musimy zakładać na niej katalogu C, tylko nagrać opisany program, co wystarczy do obsłużenia najbardziej wyszukanej sekwencji startowej.
    ZShell posiada dziesiątki innych komend i funkcji. Olbrzymią zaletą jest obecność komendy HELP, dostarczającej informacji na temat wskazanego polecenia, zaś MEMCLK wyświetlający na belce okna ilość wolnej pamięci oraz aktualną godzinę to tylko jedna z wielu niespodzianek, jakie panowie Paul Hayter i Martin Gierich zawarli w 35 kilobajtach mającego już 10 lat programu.

    ZShell ma status freeware, można go znaleźć w Aminecie w katalogu util/shell.

Sławomir Wilk

 Do góry