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