Your Ad Here

24 Ocak 2008

ETKİLİ vi EDİTÖR KULLANIMI

  1. TEMEL KONUMLAR

    1. Komut konumu

      Bu konumda basılan bir tuş ekranda görüntülenmez ama bir işlevi vardır. O işlev gerçekleşir.

      Bir komut başlamadan girilen rakamlar vi editörün o komutu kaç kez tekrarlayacağını belirtir.

    2. Giriş/Düzeltme konumu

      Bu konuma 'i', 'a', veya 'o' komutları ile girilir. Bu konumda iken basılan her tuş ekranda görüntülenir. Bu konumdan Esc tuşu ile çıkılır.

    3. Satır Editörü Konumu

      ':' komutu ile bu konuma geçilir. Bu komunda yazılan komutların işlemi bitince vi editör tekrar komut konumuna geri döner.

  2. TEMEL KOMUTLAR

    Ok tuşları İmleç (cursor) hareketi
    h j k l Ok tuşları yerine imleç hareketi
    i<text>Esc bir metini araya girme
    cw<yeni>Esc bir sözcüğü değiştirme
    x bir karakter silme
    dw bir sözcük silme
    dd bir satır silme
    u son işlemi geri alma
    ZZ vi editorden saklayarak çıkma
    :q! vi editörden saklamadan çıkma
    ^D ^B ^F ileri ve geri sayfa kaydırma

  3. KÜTÜK İŞLEMLERİ

    :w kütüğe yazma
    :w! kütüğü ezerek yazma
    :q editörden çıkma
    :q! değişiklikleri atarak editörden çıkma
    :e <ad> ad adlı kütüğü edit etme
    :e + <ad> ad adlı kütüğü sonundan edit etme
    :e + n kütüğü n. satırdan edit etme
    :e # başka bir kütüğü edit etme
    :e! # değişiklikleri atarak başka bir kütüğü edit etme
    :w <ad> ad adlı kütüğe yazma
    :w!<ad> ad adlı kütüğü ekerek yazma
    :sh shell komutuna geçiş (exit ile geri dönülür).
    :!<komut> bir komutu çalıştırma ve editöre geri dönme
    :n bir sonraki kütüğü edit ortamına alma
    ^G kütük adını ve imleçin satır numarasını görüntüleme
    :tag <tag> imleç yerine tag koyma
    :pop bir önceki tag yerine dönme

  4. vi EDİTÖRDE İmleç YERİNİ DEĞİŞTİRME KOMUTLARI

    ^F Bir sayfa ileri kaydır.
    ^B Bir sayfa geri kaydır.
    ^D Yarım sayfa ileri kaydır.
    ^U Yarım sayfa geri kaydır.
    /pat verilen karakter dizisini ileriye doğru arama
    ?pat verilen karakter dizisini geri doğru arama
    N arama yönünü değiştirme
    /pat/+n ileriye doğru aranan ilk diziden n satır sonrasına gitme
    ?pat/-n geriye doğru aranan ilk diziden n satır öncesine gitme
    ]] bir sonraki işleve gitme
    [[ bir önceki işlev gitme
    ( cümlenin başına gitme
    ) cümlenin sonuna gitme
    { paragraf başlangıcına gitme
    } paragraf sonuna gitme
    % birbirine karşıt gelen { } veya ( ) ikilisini bulma
    ^] imleçden sonraki sözcüğü tag etme
    ^T bir önceki tag yerine geri dönme.

  5. EKRAN AYARLARINA İLİŞKİN KOMUTLAR

    ^L sayfayı tekrar görüntüle
    ^R sayfayı tekrar görüntüle (^L çalışmaz ise)
    z imleç satırı en üstte olacak şekilde sayfayı yeniden
    görüntüle
    z- imleç satırı en altta olacak şekilde sayfayı yeniden
    görüntüle
    z. imleç satırı ortada olacak şekilde sayfayı yeniden
    görüntüle
    /pat/z- pat ile bulunan satırı en altta olacak şekilde sayfayı
    yeniden görüntüle.
    zn. n satırlık pencere kullan.
    ^E bir satır aşağıya kaydır.
    ^Y bir satır yukarıya kaydır.

  6. İŞARETLEME ve İŞARETE GERİ GİTME KOMUTLARI

    `` imleçin bir önceki işarete geri gönderme
    '' imleçin bir sonraki ilk boşluk olmayan yere götürme.
    mx imleç yerini x küçük harf alanına sakla
    `x imleç yerini x alanında saklanan imleç yerine götür.
    'x imleçi x alanında saklanan imleç yerindeki satırın
    ilk boşluk olmayan karakterine götür.

  7. SATIR AYARLAMA KOMUTLARI

    H imleçi ekrandaki ilk satıra götür.
    L imleçi ekrandaki son satıra götür.
    M imleçi ekrandaki orta satıra götür.
    + bir sonraki satıra git.
    - bir önceki satıra git.
    CR bir sonraki satırın başına git.
    Aşağı Ok j bir sonraki satırın aynı kolonuna git.
    Yukarı Ok k bir önceki satırın aynı kolonuna git.

  8. KARAKTER AYARLAMA KOMUTLARI

    ^ satırdaki ilk boşluk olmayan karaktere git.
    0 satır başına git
    $ satır sonuna git
    l Sağ Ok bir karakter sağa git
    h Sol Ok bir karakter sola git
    ^H bir karakter geri git
    boşluk bir karakter sağa git
    Fx bir önceki x karaterini bul
    tx x karakterinden önceki karaktere git.
    Tx x den sonraki karaktere git.
    ; Fx, tx veya Tx işlemini tekrarla
    , Fx, tx veya Tx işleminin tersini tekrarla
    n| n. kolona git
    % karşıklı { } veya ( ) tipi parantezlere git.

  9. SÖZCÜK, CÜMLE, BÖLÜM ve PARAGRAF AYARLAMA KOMUTLARI

    w b e sonraki sözcüğe, önceki sözcüğe, sözcük sonuna git
    ) ( sonraki cümleye, önceki cümleye git.
    } { sonraki paragrafa, önceki paragrafa git
    W B E sonraki, önceki boşlukla ayrılmış sözcüğe git
    boşlukla ayrılmış sözcüğün son karakterine git.

  10. GİRİŞ KONUMU DÜZELTMELERİ

    ^H Backspace
    ^W bir sözcük silme
    \ "erase", "kill" karakteri için başlangıç
    Esc, Del giriş konumundan çıkış
    ^D bir karakter geri git.
    ^^D 0^D (^) işaretinden sonra ^D satı başına git demektir.
    ^T satır başına içerlek boşluk bırak
    ^V yazılamayan karakterleri görüntülemek veya girmek
    için başlangıç

  11. GİRİŞ ve DÜZELTME KONUMU KOMUTLARI

    a imleç sonuna ekle
    A satır sonuna ekle
    i imleç yerine gir
    I satır başına ilk boşluk olmayan karakterden sonra gir
    o imleç altına bir boş satır aç
    O imleç üzerine bir boş satır aç
    rx imleç karakterini x karakteri ile değiştir
    R<text>Esc imleç yerinden text kadar metni değiştirme.

  12. İŞLEMLER

    d sil
    c değiştir
    y bir satırı belleğe al
    < sol shift
    > sağ shift
    ! bir komut ile filitrele

  13. ÖZEL İŞLEMLER

    C satırın kalanını değiştir
    D satırın kalanını sil
    s bir karakteri değiştir
    S satırları değiştir
    J satırları birleştir
    x bir karakter sil
    X imleçden önceki karakteri sil
    Y satırları belleğe al

  14. KES ve YAPIŞTIR KOMUTLARI

    <n>yy n satırı belleğe al
    <n>yl n karakteri belleğe al
    p imleçin devamına bellektekini kopyala
    P imleçin önüne bellektekini koplaya
    "xp x belleğindekini kopyala
    "xy x belleğine al
    "xd silerken x belleğine al

  15. GERİ ALMA ve YİNELEME KOMUTLARI

    u son değişiklik işlemini geri al
    U son satırı eski haline getir
    . son değişikliği tekrarla
    "dp sondan d satır önceki satır silmeyi geri getir.


SATIR EDİTÖRÜ KOMUTLARI


Genelde, bir satır editöründe komut :

       ,s/eski/yeni/g
biçimindedir. Bu örnekte editör eski karakter dizisini yenisi ile değiştirir.

Genel satır editörü komutları kalıbı :

       [adres [,adres]]komut[parameterler]
biçimindedir. Bu kalıptaki adres'ler işlemin yapılacağı satırların numaralarını gösterir.

SATIR ADRESLEMESİ

Bir adres kütük içinde satırın başlangıç satırından uzaklığını tanımlar. Komut içinde son satır belirtilmez ise, yalnız virgül kullanımı son satırı gösterir. Satır adresleri aşağıdaki listeden oluşturulurken satırlara sayısal değerler de verilebilir.

Aşağıdaki tabloda satır adresi olarak kullanılan simgeler gösterilmiştir.

. imleçin bulunduğu satır.
$ Kütüğün son satırı.
n Kütüğün n. satırı n [0,$] arasında bir değerdir.
-
^
Önceki satır. Bu değer -1 ile aynı anlama gelir.
-n
^n
Önce n. satır. Burada n sıfırdan büyük bir sayıdır.
+ Bir sonraki satır. Bu değer +1 ile aynı anlama gelir.
+n
boşluk n
Sonraki n. satır. Burada n sıfırdan büyük bir sayıdır.
,
%
İlk satırdan sonuna kadar tüm satırlar. 1,$ ile aynı anlama gelir.
; imleç satırından sonuna kadar tüm satırlar. .,$ ile aynı anlama gelir.
/re/ içinde regular expression re olan bir sonraki satır.
?re? içinde regular expression re olan bir önceki satır.
'lc Daha önce mark komutu ile işaretlenmiş satır.

DÜZENLİ DEYİMLER (REGULAR EXPRESSIONS)

"Düzenli Deyimler" metin içindeki bir karakter dizisini aramak için kullanılan deyimlerin genel adıdır.

Düzenli deyimler, yalnız karakter dizisi olmayıp, bir kümede yer alan dizileri de tanımlayabilir. Bu durumda kurala uyan karakter dizileri aranmış olur. Bir satırda aynı kümeye/sınıfa giren birden çok karakter dizisi bulunursa, önce soldan ilki seçilir.

Aşağıdaki simgeler Kurallı Deyim oluşturmada kullanılır.

c Karakter c `{', '}', `(', `)', `<' ve `>' değilse kendisini bulur.
\c Bu karakter `{', '}', `(', `)', `<', `>', `b', 'B', `w', `W', `+', ve `?' değilse kendisini bulur.

Herhangi bir karakteri bulmak

[char-class] bu karakter kümesine uygun ilk karakteri bulur. Bir karakter kümesi, yazılan iki karakter arasındaki artan sırada karakterleri tanımlar. Örneğin a'dan z'e tüm küçük harfler kümesi için [a-z] yazmak gerekir.

Aşağıdaki şekilde karakter kümeleri tanımlama olanağı vardır :

[:alnum:] [:cntrl:] [:lower:] [:space:]
[:alpha:] [:digit:] [:print:] [:upper:]
[:blank:] [:graph:] [:punct:] [:xdigit:]

Eğer küme tanımında ilk karakter '-' ise kendisini arar.

Patterns in char-class of the form: Aşağıdaki gibi tanımlanmış kümelerde

[.col-elm.] veya, [=col-elm=]

"col-elm" ülke kodlamasına göre sıralanmış karakterleri tanımlar.

[^char-class] Yeni satır hariç, belirtilen küme içine girmeyen ilk karakteri bulur.
^ Eğer `^' deyimin ilk karakteri ise satır başından arama yapar. Yoksa karakterin kendisini arar.
$ Eğer `$' deyimin son karakteri ise satır sonuna göre arama yapar, yoksa kendisini arar.
\(re\) Bir alt deyimi tanımlar. Bazen alt deyim boş olabilir. İçiçe alt deyim tanımlanabilir. Örneğin `\(a.c\)\1'
`abcabc', fakat `abcadc' bulunamaz.
* bir deyimin peşinden gelen ilk karakteri bulur. Örneğin `b*' ile `abbb' bulunur, ancak `bbb' bulunamaz.
\{n,m\}
\{n,\}
\{n\}
bir karakterlik deyimi en az n kez, en çok m kez tekrarlandıktan sonra bulur.
\<
\>
bir karakterlik deyimi kelime başına (\<) veya kelime sonuna (\>) göre arar.

Aşağıdaki geliştirilmiş işlem kodlarının başındaki '\', işlemleri diğer editör komutlarından ayırmak için konmuştur.

\`
\'
Koşulsuz olarak satır başını (\`) veya sonunu (\') arar.
\? kendisinden önce gelen deyim veya altdeyime uygun ilk karakteri bulur.
\+ kendisinden sonra gelen ve birden çok tekrarlanan ilk deyim veya altdeyime uygun karakteri bulur.
\b bir kelimenin başını veya sonunu bulur. Yani `\bhello\b' biçimindeki bir deyim `\<hello\>' ile aynıdır. Ancak `\b\b'i geçerli bir deyim iken `\<\>'değildir.
\B Bir kelime içindeki boşluğu arar.
\w bir kelime içindeki herhangi bir harfi arar.
\W kelime içinde olmayan bir karakteri bulur.

KOMUTLAR (COMMANDS)

Tüm editör komutları tek karakterlidir. Ancak bazıları için paramterler tanımlanabilir. Bir komut için bir satır yeterli olmaz ise satırın devam ettiğini göstermek için (\) kullanılır.

Genelde her satır için bir komut tanımlanabilir. Ancak her komuttan önce yazma ve listeleme komutu kullanılabilir.

^C yazılan satırı durdurur ve editörü komut konumuna geri döndürür.

editör için aşağıdaki komutlar kullanılabilir.

(.)a metni belirtilen satırın arkasına ekler.
(.,.)c Belirtilen satırdaki bilgiyi değiştirir.
(.,.)d adreslenen satırlar arasını siler.
e file bir kütüğü edit ortamına alır ve varsayılan kütük adını belirler.
e !command !command komutu ile oluşan çıktı satırını edit ortamına alır.
E file Bir kütüğü koşulsuz olarak edit ortamına alır.
f file Varsayılan kütük adını "file" yapar.
(1,$)g/re/command-list Komut listesini belirtilen satırlar arasında, belirtilen deyime uygun gelen yerlerde uygular.

komut listesindeki komutların herbiri ayrı satırlarda olmalıdır. Ancak en son komut (\) ile son bulmalıdır.

(1,$)G/re/ adreslenen satırlarda deyime uygun bilgiyi etkileşimli olarak edit etmek içinkullanılır.

komut listesi kalıbı 'g' komutundaki gibidir.

H Bir önceki deyimin yazılıp yazılmamasını değiştirir (yaz/yazma gibi)
h Son hata açıklamasını yazmak için kullanılır.
(.)i Aktif satırın önüne yeni satır eklemek için kullanılır.
(.,.+1)j adreslenmiş satırları birleştirir.
(.)klc içinde lc ile tanımlanmış küçük harf bulunan satırı işaretler.
(.,.)l Adreslenmiş satırları listeler.
(.,.)m(.) adreslenmiş satırları belirtilen satırdan sonrasına taşır.
(.,.)n Satırları satır numaraları ile yazdırır.
(.,.)p Belirtilen satırları yazdırır.
P Komut işaretini kapatır veya açar.
q editörden çıkmak için kullanılır.
Q editörden koşulsuz çıkışı sağlar.
($)r file kütüğü okuyup belirtilen satırdan sonrasına taşır.
($)r !command !command ile çalıştırılan komutun çıktısını belirtilen satırdan sonarsına okur.
(.,.)s/re/replacement/
(.,.)s/re/replacement/g
(.,.)s/re/replacement/n
Belirtilen satırlar arasında, belirtilen deyime (re) uyan metinleri belirtilen deyimle (replacement) değiştirir.

re ve replacement yeni satır karakteri veya boşluk dışında bir karakter olabilir.

Escape kullanılmamış & replacement içinde varsa re deyimine uyumlu metini tekrarlar.

`\m' karakter sırası kullanılırsa ve burada m [1-9] arasında bir değerse, değişiklik m tane önce yapılan değişikliğe uyan metin ile değiştirilir.

Eğer replacement bir tane `%' den oluşuyorsa bir önceki değiştirmeden kullanılan replacement metni kullanılacaktır. Eğer (\) kullanılırsa yeni satır karakteri metin içine yazılabilir.

(.,.)s Son değişikliği tekrarlar.
(.,.)t(.) belitilen satırları komuttan sonra gösterilen satırın arkasına kopyalar.
u Son komutu geri alır.
(1,$)v/re/command-list Belirtilen satırlar için re deyimine uymayan satırlarda komut listesini uygular.
(1,$)V/re/ Belirtilen satırlar için re deyimine uymayan satırlarda etkileşimli düzeltme yapılmasını sağlar.
(1,$)w file Belitilen satırların "file" adlı kütüğe yazılmasını sağlar.
(1,$)wq file Belitilen satırların "file" adlı kütüğe yazılmasını sağlar. Ve sonra editörü bitirir.
(1,$)w !command Belirtilen satırların !command komutu ile çalışacak programa girdi olmasını sağlar.
(1,$)W file Belirtilen satırların "file" adlı kütüğün sonuna yazılmasını sağlar.
(.)x Belirtilen satırdan sonrasına kesme tampon alanındaki bilginin kopyalanmasını sağlar.
(.,.)y Belirtilen satırları kesme tampon alanına koplayamaya yarar.
(.+1)zn Belirtilen adresden başlayarak her seferinde n satır kaydırılmasını sağlar.
!command shell açarak komutu çalıştırır.
(.,.)# Bir açıklamayı başları. Bu satırda bundan sonra yazılan herşey açıklama olarak kullanılır.
($)= Belirtilen satırın satır numarasını yazdırır.
(.+1)newline Adreslenen satırın satır numarasını yazar ve imleç o satıra gider.
Ana Sayfaya   Teknik Bilgiler Sayfasina


Aglar Aglink Agteknik C-Kodlama C-Önişleme CRC/LRC DEA etcsrv Çatal (fork) ilet inetd Make Msg Auth Özyinelemeli Robotlar için SDLC Güvenlik Seri uçlar SNA LU0 SNA LU6.2 tcp/ip tcp Programı Unix vi Editör