AMIGA DOS

CLI kursumuzu sürekli takip edenler, geçen ay komutların açıklamalarını bitirdiğimizi hatırlayacaklardır. İşin teorik kısmını tamamladıktan sonra, bu aydan itibaren CLI kullanımını pekiştirmeye yönelik uygulamalara geçiyoruz. Vereceğimiz örnekler fazla karışık olmayacağından, yeni başlayanlar da bunlardan yararlanabilirler.

CLI ve Shell'deki komut ve tuş kombinasyonlarından daha önce pek fazla bahsetmemiştik. CTRL ve ESC tuşlarıyla sağlanan bu özellikler sayesinde CLI'yi daha rahat kullanmak mümkün hale geliyor. Aşağıda bu özelliklerin bir listesi yer almakta: CTRL-H BACKSPACE CTRL-I Kursoru bir tab pozisyonu sağa kaydırır (sadece CLI) CTRL-J Kursoru bir alt satırın başına götürür CTRL-K Kursoru bir satır yukarı götürür (sadece CLI) CTRL-L CLI veya Shell penceresini temizler CTRL-M RETURN tuşu ile aynı CTRL-N ALT tuşuna basarak çıkan karakterleri aktif hale getirir CTRL-0 Normal karakterleri aktif hale getirir CTRL-X Satırı siler CTRL-D Dosya sonunu belirtir

Yukarıdaki kombinasyonları girerken CTRL tuşuna ve ilgili tuşlara aynı anda basın. (ESC)c CLI veya SHELL penceresini siler (ESC)[0m Bütün seçimler iptal edilir (ESC)[1m Bold (kalın) yazı karakteri seçilir (ESC)[2m Yazı karakterleri için 2 nolu WB rengi (siyah)

seçilir (ESC)[3m İtalik yazı karakteri seçilir (ESC)[30m Yazı karakterleri için 0 nolu WB rengi (mavi)

seçilir (ESC)[31m Yazı karakterleri için 1 nolu WB rengi (beyaz)

seçilir (ESC)[32m Yazı karakterleri için 2 nolu WB rengi (siyah)

seçilir (ESC)[33m Yazı karakterleri için 3 nolu WB rengi (portakal)

seçilir (ESC)[4m Underline (altı çizili) yazı karakteri seçilir (ESC)[40m Arkaplan için 0 nolu WB rengi (mavi) seçilir (ESC)[41m Arkaplan için 1 nolu WB rengi (beyaz) seçilir (ESC)[42m Arkaplan için 2 nolu WB rengi (siyah) seçilir (ESC)[43m Arkaplan için 3 nolu WB rengi (portakal) seçilir (ESC)[7m Yazı arkaplanı renkli hale gelir (ESC)[8m Yazı görünmez hale gelir (ESC)[nu CLI veya Shell penceresinin genişliği n karakter genişliğine ayarlanır (ESC)[nt CLI veya Shell penceresindeki satır sayısı n piksel olarak seçilir (ESC)[nx Paragraf boşluğu n piksel olarak seçilir (ESC)[ny Tepeye olan uzaklık n piksel olarak seçilir ESC komutlarını girerken, önce bir defa ESC tuşuna basın ve arkasından yukarıda belirtilen kodları girip RETURN tuşuna basın. İsterseniz ESC komutlarını ECHO komutu içinde de kullanabilirsiniz. Burada ESC tuşuna basmanız gerekmiyor. Örneğin: 1> echo "*e[3m bu italik bir yazıdır" Dikkat ederseniz ESC yerine *e karakterlerini kullandık. Eğer CLI'yi yükler yüklemez, yukarıdaki seçeneklerden biri seçili halde başlamasını istiyorsanız, S directory'si içinde yer alan CLI-Startup dosyasını ED ile aşağıdaki şekilde değiştirin: 1> run ed df0:s/CLI-Startup prompt "(ESC)[32m%N> "

Dosyayı yeni haliyle diskete kaydettikten sonra, system directory'si içinde yer alan CLI ikonunu kliklediğinizde, CLI penceresinde yazıların siyah olduğunu fark edeceksiniz. Aynı işlemi Shell-Startup dosyasıyla da yapabilirsiniz.

Genel olarak bir komutun adını değiştirmek çok basittir. Bu iş için ya rename komutu kullanırsınız ya da hiç yorulmadan herhangi özel bir programla işinizi görürsünüz. Ancak bu işlem bir kimsenin kendi adını mahkeme kararıyla değiştirmesine benzer ve herhangi bir komutun adını değiştirmenin sakıncaları olabilir. Eğer adını değiştirdiğiniz komutu eski adıyla script dosyalarında sıkça kullanmışsanız, başınıza iş açmış olursunuz. Çünkü dosyayı çalıştırabilmek için, dosyada yer alan her komutu yeni ada göre değiştirmeniz gereklidir. Öte yandan adları uzun olan komutları yazmak da pek zevkli değil. Burada sizlere iki değişik çözüm önerebilirim. Birinci yol ASSIGN komutuyla bir komutu herhangi bir adla görevlendirmek. Örneğin:

1> assign e: execute komutunu verdikten sonra hem execute komutunu hem de ona göre daha kısa olan e: adını execute yerine kullanabilirsiniz.

Bu arada, daha önceden Shell-Startup dosyasına bakarken ALIAS adlı bir komut gözünüze çarpmış olabilir. Daha önce komutları tek tek anlatırken bu komuttan hiç söz etmedik. Gerçekten de C directory'sine baktığınızda burada böyle bir komutun yer almadığını göreceksiniz. Çünkü alias komutu, shell programının bir parçası ve Shell'i CLI'den üstün kılan en önemli özelliklerden bir tanesi. Alias komutu size önereceğim ikinci yol.

İngilizce'de takma ad anlamına gelen Alias, DOS komutlarını değişik etiketlerle (ad) çağırmak için kullanılıyor. Böylece yukarıdaki örnekte olduğu gibi, mahkemeye gidip gerçek adınızı değiştirmeye gerek kalmıyor. DOS komutu derken sadece komutun adını kastetmiyorum. Argüman veya parametreleriyle çalışmaya hazır bir komutu istediğiniz bir etiketle çağırıp çalıştırabiliyorsunuz. Hemen buna bir örnek verelim.

1> type s:startup-sequence komutunu sıkça kullandığınızı varsayalım. Hayatı kolaylaştırmak için şu komutu yazabilirsiniz.

1> alias s-s type s/startup-sequence Artık yeni bir komutunuz oldu. İstediğiniz zaman s-s yazarak type s/startup-sequence komutunun yaptığı işi yapan komutunuzu çalıştırabilirsiniz. Bunun için önce alias komutunu, ardından yeni komutun etiketini ve en son olarak da yeni komutun yapacağı işlemi DOS komutu olarak yazıyoruz. Daha önce verilmiş alias komutlarını ve bu komutların fonksiyonlarını görmek için alias komutunu yazdıktan sonra RETURN tuşuna basın.

Shell-Startup dosyasında aşağıdaki alias komutları yeralmakta: 
alias xcopy copy [] elone 
alias endshell endeli 
alias pro execute s:spat protect [] 
alias sdate execute s:spat setdate [] 
alias ren execute s:dpat rename [] 
alias clear echo "*E[0;0H*E[J" 
alias reverse echo "*E[0;0H*E[41;30m*E[J" 
alias normal echo "*E[0;0H*E[40;31m*E[J"

Burada endshell komutunun endcli komutunun bir kopyası olduğunu görmek sizi şaşırtabilir. İsterseniz alias ile BASIC diline benzer komutlar yaratabilirsiniz. İşte size birkaç örnek:

1> alias cls echo "*ec" komutundan sonra, cls yazdığınızda ekran temizlenecektir. Bu işi nasıl yaptığımızı herhalde yukarıda bahsettiğimiz ESC komutlarını okuduktan sonra anlamışsınızdır. *e ESC komutunu belirtirken c seçeneği ekranın temizleneceğini belirtiyor.

1> alias mtl mount rad: 
1> alias mt2 system/rormat drive rad: name radwb 
1> copy * to ram:mount-rad 
mt1 
mt2 (CTRL-)

1> execute ram:mount-rad Burada mt1 ve mt2 komutları sayesinde RAD disk'i açma işlemini kolaylaştırdık. Rad'ı mount komutu ile sisteme bağladıktan sonra formatlama yapmasanız da olur. Üçüncü satırda ED'i yüklemeden nasıl script dosyası yarattığımızı görüyorsunuz. * İşareti klavyeyi belirtiyor ve klavyeden yazdığımız komutlar, dosya sonunu belirten CTRL-D tuşlarına bastığımız anda, RAM'daki mount-rad dosyasına (o anda yaratılıyor) yazılıyorlar. Bu dosyayı dördüncü satırdaki komutla çalıştırarak, sonucu kendiniz de görün. İsterseniz RAM yerine DF0 yazarak dosyanın diskete kaydedilmesini sağlayabilirsiniz.

1> alias eli echo "*e[80u*e[0x*e[0y*e[31t" komutundan sonra eli komutunu verdiğinizde eli penceresinin sınırlarının kaybolduğunu göreceksiniz. Ekranı eski haline döndürmek için (ESC) tuşuna sonrada c tuşuna basın.

Sonuç olarak alias komutuyla komutların gerçek adını koruyarak daha rahat bir CLI ortamı yaratabiliyorsunuz.

»Şimdi de size birkaç ufak CLI numarası göstereyim. Geçenlerde, PC sahibi bir arkadaşım bana iftiharla bilgisayarının konuştuğundan bahsetti. Ben de ona Amiga'nın da bu işi pekala yapabildiğinden hatta Amiga'nın herhangi bir program yüklemeye gerek olmadan kendi içindeki konuşma aracıyla sesler çıkarabildiğinden bahsettim. Arkadaşım bunun nasıl olduğunu merak edince oturduk Amiga'nın başına ve CLI'ye girdik:

1 > mount speak: 
Amiga'nın dahili konuşma aracı olan speak-handler'ı böylece 
sisteme bağladık.

1> copy * to speak: Klavye'den yazacaklarım artık speak-handler'a gitmeye başladı ve arkadaşımın yüzünde bir şaşkınlık ifadesi belirdi. Belli ki işin bu kadar kolay olacağını tahmin etmiyordu.

Disketlerinizin içindeki değerli programların listesinin ekrandan kayıp gitmesi yerine daha kalıcı bir çözüm istiyorsanız bunların listesini yazıcıdan çıkarmayı düşünebilirsiniz. Bu işlemi iki değişik yoldan yapabilirsiniz. Birinci yol:

1> dir > prt: opt a fakat bu işlem çok hızlı gerçekleşir ve liste olduğu gibi yazıcıya yollanır. Bunun için ikinci yolu kullanarak, directory'yi ed ile istediğiniz biçimde düzenleyip kaydedebilir ve sonradan type komutu ile yazıcıdan bastırabilirsiniz. Önce aşağıdaki edlist adlı script dosyasını ed ile yazdıktan sonra kaydedip execute edlist directory komutuyla çalıştırın:

.key directory 
dir >ram:dirdosyası <directory> 
run ed ram:dirdosyası 
delete ram:dirdosyası 
Ed ile işiniz bittikten sonra dirdosyası adlı dosyayı (ESC)-x ile 
diskete kaydedin ve aşağıdaki komutu verin.

1> type > prt: df0:dirdosyası Aynı işlemi list komutu için de yapabilirsiniz. Bunun için aşağıdaki script dosyasını kullanın.

.key direetory 
list >ram:listdosyası <directory> 
run ed ram:listdosyası 
delete ram:listdosyası