Bu sayfadaki yazılar
Sayfanın metni
Sayfa 51
WITH seçeneği ile özel bir dosya adı vererek EDIT komutlarını bu dosyadan okutabilir, VER seçeneğiyle de EDIT mesajlarını bir dosyaya veya mantıksal araca gönderebilirsiniz.
OPT ile EDIT'te kullanacağınız satır sayısını ve satır uzunluğunu ayarlamak mümkündür. OPT Pn satır sayısını, Wn de satır uzunluğunu n değeri kadar değiştirir. Orijinal değerler P=40 ve W=120.
Örnek: 1> edit yazılar/saçmalık to yazılar/başyapıt with düzelti ver nil:
ELSE Format: ELSE Batch dosyalarında yakalanan koşulların alternatif komutlarla devam etmesini sağlar.
ENDCLI Format: ENDCLI Kullanılan CLI penceresini kapatır ve AmigaDOS'tan çıkışı sağlar. Çok sayıda CLI penceresi açtığınız durumlarda, yalnızca mouse ile seçilmiş pencere kapanır. CLI'den çıktıktan sonra, CLI'yi başlattığınız ortama geri dönersiniz. Eğer Workbench'i yüklemeden Startup-sequence'i keserek (CTRL-D) ile CLI'ye girmişseniz ENDCLI komutundan sonra yeniden CLI penceresi açmanız mümkün değildir. Shell'de çalışırken de bu komutu veya ENDSHELL komutunu (aslında bu komut ENDCLI'nin aynısıdır ve sadece ALIAS komutuyla adı bu şekilde değiştirilmiştir) verebilirsiniz.
ENDIF Format: ENDIF Batch dosyalarında IF komutuyla belirtilen koşul bloklarının (rutin) sonunu gösterir.
ENDSKIP Format: ENDSKIP ENDSKIP komutu, SKIP ile gidilen blokların sonunu gösterir. Dosya, ENDSKIP komutundan sonraki satırdan çalıştırılmaya devam edilir.
EVAL Format: EVAL değer1 işlem değer2 [TO Dosya] [LFORMAT = yazı karakteri dizisi]
Bu komutla, CLI içinden basit aritmetik ve mantıksal işlemler yapabilirsiniz.
Değer1 ve değer2 yerine ondalık, onaltılık veya sekizlik bir sayı veya alfabetik bir harf kullanabilirsiniz. Onaltılık sayılar #X (veya 0x), sekizlik sayılar da # (veya 0) önekleriyle gösterilir. Alfabetik karakterleri ise tek tırnak içinde belirtmelisiniz.
LFORMAT seçeneği EVAL işleminin sonucunun değişik bir formatta (onaltılık, sekizlik vb.) gösterilmesini sağlar. TO seçeneği ise, script dosyalarında döngüleri kontrol eden EVAL'in sonucunu, istenen bir dosyaya gönderir.
FF EXECUTE Format: FF [-O] [-N] [font]
Bu komut dos işlemlerinde, yazıların daha çabuk (yaklaşık %20) ekrana gelmesini sağlar. Bunun yanında herhangi bir fontu (8 punto olmak şartıyla), FF komutuna argüman olarak yazarsanız, bu font sistem fontu olarak kullanılır ve yazılar bu fontla ekrana gelir. -O argümanı FF rutinlerini aktive etmek için kullanılır. Eğer bu mesajı almak istemiyorsanız, ff >nil: yazın. -N argümanı da komutu normal çıkış modunda çalıştırır (Turning on Fasttext mesajı verilmez).
Format: EXECUTE dosya-adı
BASIC'teki RUN komutuna benzeyen Execute komutu, herhangi bir editör programı ile yazılmış CLI komutlarından oluşan script dosyalarını çalıştırır. Bu dosyaları CLI komutları gibi isimlerini vererek çalıştırmaya kalkarsanız hata mesajı alırsınız.
Addbuffers df0: 10 c:SetPatch >NIL: ;patch system functions cd c: echo " A500/A2000 Workbench disk. Release 1.3 version 34.2©*N" Sys:System/FastMemFirst; move C00000 memory to last in list BindDrivers SetClock load ;load system time from real time clock (A1000 owners should :replace the SetClock load with Date FF >NIL: -0 ;speed up Text resident CLI L:Shell-Seg SYSTEM püre add; activate Shell resident c:Execute pure mount newcon: ; Failat 11
run evecute s:StartupII ;This lets resident be used for rest of script wait >NIL: 5 mins ;wait for StartupII to complete (will signal when done)
; SVS:System/SetMap usal ;Activate the ()/* on keypad path ram: c: sys:utilities sys:system s: sys:prefs add ;set path for Workbench LoadWB delay ;wait for inhibit to end before continuing endcli>NIL:
AMIGADOST TABLO 1 .key dosya IF;<dosya>" EQ"" echo "•nKOMUTUN SONUNA DOSYA ADI GIRIN.*n" quit endif IF"<dosya>" EQ"??" echo "*n*nDIRECTORY BELİRMEYİ UNUTMAYIN*n" quit endif if exists <dosya> copy <dosya> TO <dosya>.KOPYA else echo "*nDOSYAYI BULAMADIM.*n" endif
AMIGADOS TABLO2
loadwb ask "CLI PENCERESİ KALSIN MI? (EVET/Y HAYIR/N)" if warn newcli "con:0/50/300/100/CLI" endif endcli
AMIGA DOS TABLO3
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 50
Geçen ay, CLI'nin ekran editörü olan ED'in kullanımını görmüştük. Bu yazımızda ED ile script dosyalarının nasıl yazıldığını görecek ve Workbench disketinizde mevcut script dosyalarını inceleyeceğiz. Bundan önce, Workbench disketinin bir kopyasını çıkartarak (1> system/diskcopy df0: komutuyla bunu CLI içinden yapabilirsiniz), çalışmalarınızı bu disket üzerinde yapmanızı tavsiye ederim.
Script dosyalarının bize sağladığı en önemli kolaylık, komutları tek tek yazıp çalıştırma zahmetinden kurtulmak ve zamandan tasarruf etmektir. ED'i yükledikten sonra sanki BASIC dilinde programlar yazıyormuş gibi çalışabilirsiniz. Hatta isterseniz, ED'de BASIC komutlarıyla (PRINT, WINDOW vb.) programlar yazın ve bunları BASIC dosyaları olarak kaydedin. Fakat bunları çalıştırmak için önce BASIC'i yüklemeniz gerektiğini unutmayın. Öte yandan, CLI komutlarını kullanırsanız, Amiga, bu komutları herhangi bir dile ihtiyaç duymadan çalıştırır. Ancak bu komutlar BASIC'te olduğu gibi, herhangi bir program diliyle beraber otomatik yüklenmezler, bunun yerine Workbench'teki c directory'si içinde saklanan komutlar script dosyası çalıştırılırken yüklenip görevlerini yerine getirirler.
Script dosyalarının belli karakteristikleri vardır. Örneğin her satıra ancak tek bir komut yazılabilir. Böylece EDIT gibi satır editörlerinin de script dosyaları yazmada kullanılması mümkün oluyor. IF ve ELSE komutlarının dışında, script dosyalarında dallanma işlemleri yapmak mümkün değildir. CLI'de her komutun birbirini takiben çalıştırılması, komutların yazılma sırasının (sequence) önemini gösteriyor.
Bu bilgilerden sonra script dosyası yazmaya başlayabiliriz. Bu arada, geçen ayki AMIGA DOST yazısını okuyarak ED hakkında bilgi sahibi olmanızda fayda var. Şimdi CLI içinden şu komutu yazın:
1 > ed disketler
Workbench disketinde böyle bir dosya var olmadığı için, 'disketler' adıyla yeni bir dosya açılacaktır. ED ekranı boş olarak çıktıktan sonra aşağıdaki komutları yazmaya başlayabilirsiniz.
echo "program disketleri" echo "demo disketleri" echo "oyun disketleri" echo "bozuk disketler"
Bu komutları yazdıktan sonra (ESC) tuşuna ve sonra da X ve RETURN tuşlarına basın. Dosyanız 'disketler' adıyla diskete kaydedilecek ve CLI'ye geri döneceksiniz. Dosyanızı çalıştırmak için şu komutu verin.
1 > execute disketler Sonuç olarak aşağıdaki yazı ekrana gelecektir.
program disketleri demo disketleri oyun disketleri bozuk disketler
ED ile çok daha uzun ve değişik CLI komutlarından oluşan script dosyaları yazabilirsiniz. Ayrıca Workbench disketinde mevcut olan script dosyalarını da yükleyip değiştirebilirsiniz. Bu dosyalardan bazıları, S directory'si içindeki startup dosyaları, DEVS directory'si içindeki mountlist dosyasıdır. Özel bir Startup dosyası olan Startup-Sequence adlı dosyada, bilgisayarınızı açıp Workbench disketini taktıktan sonra otomatik olarak çalıştırılacak komutlar vardır. İsterseniz bu komutları yakından inceleyelim. Startup-sequence dosyasını ED'e yüklemek için şu komutu yazın.
1 > ed df0: s/start up-sequence
Workbench 1.3 kullanıcıları, Tablo 1'deki komutların ekrana geldiğini görecekler. Bu komutlar demin de belirttiğim gibi disketi her yükleyişinizde çalıştırılırlar. Şimdilik buradaki komutların ne işe yaradıklarını teker teker açıklamayacağım. Ancak bu kadar çok komutun çalıştırılmasından dolayı Workbench'in yüklenme zamanının uzadığı da bir gerçek. Öyleyse şimdi Workbench'i daha hızlı yükleyen, özel startup-sequence'inizi yazabilirsiniz. Önce işe CTRL-B tuşlarına basarak, ekrandaki komutların tümünü silmekle başlayın. Bundan sonra sırayla şu komutları yazın.
echo " WORKBENCH ÖZEL DİSKETİ" ff loadwb endcli
ESC-X ve RETURN yaparak bu dosyayı eski dosyanın üzerine kaydedin. Kayıt işlemi tamamlanınca Amiga'nızı resetleyip Workbench'in ne kadar hızlı yüklendiğini kendi gözlerinizle görebilirsiniz.
Şüphesiz orijinal startup-sequence'deki komutlar boş yere yazılmamışlar. Aslında bu komutlar, bilgisayarı sizin için daha rahat bir çalışma ortamı yaratacak şekilde hazırlıyorlar. Siz de CLI'de ustalaşınca kendi isteklerinize, ihtiyaçlarınıza ve donanımınıza uygun startup-sequence dosyaları hazırlamak isteyeceksiniz. Bu arada S directory'si içinde yeralan değişik startup dosyaları da böyle farklı ihtiyaçlar için hazırlanmışlar. Örneğin, startup-ll adlı script dosyası startup-sequence içinden çalıştırılır ve sıkça kullanılan komutları bellekte hazır (resident) hale getirir. S directory'sinde ayrıca Shell-startup ve CLI-startup olarak iki dosya bulunur ki bu dosyalar, her yeni CLI veya SHELL penceresi açışınızda çalıştırılır.
Script dosyaları yazarken, isterseniz özel değişkenler kullanabilirsiniz. Bunun için, .key ifadesini dosyanızın başına bir değişken adıyla beraber ekleyin. Tablo 2'deki script dosyasını ED ile yazıp diskete kaydedin. Bu dosyayı execute komutu ile çalıştırarak dosya kopyalama işlemleri yapabilirsiniz.
Son olarak Tablo 3'te nispeten kısa bir startup-sequence dosyası bulacaksınız. Bu dosyayı yazıp startup-sequence adıyla kaydettiğinizde Workbench yüklendikten sonra Shell penceresi küçülecek ve o şekilde kalacaktır.
KOMUTLAR
Format: ED [FROM] dosya adı [SIZE n]
ED bir ekran editörüdür. FROM seçeneğinden sonra yazdığınız dosya adı, eğer diskette mevcutsa o dosya yüklenir, mevcut değilse aynı isimle yeni bir dosya yaratılır. SIZE seçeneği buffer'ın büyüklüğünü bayt olarak belirler (normali 40000 bayt).
Örnek:
l>ed c-programları
EDIT Format: EDIT [FROM] dosya adı [[TO] dosya adı] [WITH dosya adı] [VER dosya adı] [OPT seçenek]
EDIT bir satır editörüdür ve bir dosyanın satırlarını sıralı olarak incelemenize olanak sağlar. TO seçeneği ile FROM'dan okunan dosyayı başka bir isimle kaydedebilirsiniz. Eğer TO seçeneğini baştan vermemişseniz, EDIT içinden vereceğiniz Q ve W komutları sonucunda dosya T directory'si içine kaydedilir.