Vi, linux üzerinde kullanılan bir metin editörüdür. Kendi içerisinde kısaltmaları, modları, kombinasyonları bulunur. Bu yapılar sayesinde komut ekranında yapılan işlemleri hızlandırır ve daha rahat bir çalışma ortamı sağlar. Ancak bu bahsettiğim rahat ortam vi’yi tam olarak kullanmaya başladığınızda oluşacaktır. Öğrenme süreci uzun, yıpratıcı ve dikenli olsa da sonunda elde edilecek bilgi için bence değer.
Vi üzerinde iki mod bulunmaktadır. İlki komut modu(command mode) olup metin üzerinde manipülasyon ve düzeltmeleri yaptığımız kısımdır. İkinci kısım ise girdi modu (insert mode) ise direkt olarak metin içerisine ekleme yapmamızı sağlamaktadır. Vi ile bir metin açtığınızda komut modunda açılacaktır. Girdi moduna geçmek için a veya i tuşları kullanılır. Eğer girdi modundan, komut moduna geçmek isteniyorsa tek yapılması gereken ESC yuşuna basmaktır.
Vi ile ilgili genel olarak bilinmesi gereken ve komutların listeleri aşağıdadır.
Çıkış Komutları
Komut |
Açıklama |
:w |
Dosyayı kayıt eder |
:q |
Dosyadan çıkış yapar ancak bir değişiklik yapılmışsa hata verir. |
:q! |
Değişiklikleri dikkate almadan çıkış yapar. |
:wq |
Dosyayı önce kayıt eder sonra çıkış yapar. |
ZZ |
:wq ile aynı işleve sahiptir. |
:x |
:wq ile aynı işleve sahiptir. |
Girdi Komutları
Komut |
Açıklama |
i |
İmlecin bulunduğu yerden itibaren girdi moduna geçer. |
I |
İmlecin bulunduğu satır başına giderek girdi moduna geçer. |
a |
İmleci bir karakter ileri alarak girdi moduna geçer. |
A |
İmleci bulunduğu satırın sonuna götürerek girdi moduna geçer. |
o |
Bulunduğu satırı bitirip seni bir satır başında girdi moduna geçer. |
O |
Bulunduğu satırı bir satır aşağı kaldırıp o satır öncesinde girdi moduna girer. |
r |
Bir karakter değiştirmek için kullanılır. |
R |
Birden fazla karakter değiştirmek için kullanılır. ESC tuşuna basana kadar replace modundan çıkmaz. |
cw |
İmlecin bulunduğu yerden kelime sonuna kadar siler ve girdi moduna geçer. |
C |
İmlecin bulunduğu yerden satır sonuna kadar siler ve yazı moduna girer. |
cc |
İmlecin bulunduğu tüm satırı siler ve girdi moduna geçer. |
s |
Üzerinde bulunan karakteri silip girdi moduna geçer. |
Silme Komutları
Komut |
Açıklama |
x |
İmlecin o an bulunduğu yerin sağındaki ilk karakteri siler. |
X |
İmlecin o an bulunduğu yerin solundaki ilk karakteri siler. |
3x |
İmlecin o an bulunduğu yerin sağındaki karakterleri başındaki rakam(3) kadar siler. |
3X |
İmlecin o an bulunduğu yerin solundaki karakterleri başındaki rakam(3) kadar siler. |
dw |
İmlecin bulunduğu yerden kelime sonuna kadar siler. |
D |
İmlecin bulunduğu yerden satır sonuna kadar siler. |
Dd |
İmlecin bulunduğu satırı siler. |
3dd |
İmlecin bulunduğu satır dahil aşağı doğru başındaki rakam(3) kadar satır siler. |
:d |
İmlecin bulunduğu satırı siler. |
Kopyala&Yapıştır Komutları
Komut |
Açıklama |
yy |
İmlecin bulunduğu satırı kopyalar. |
X |
İmlecin bulunduğu satırdan itibaren baştaki rakam kadar(5) satırı kopyalar. |
p |
Hafızadaki veriyi imlecin bulunduğu satırın altına yapıştırır. |
P |
Hafızadaki veriyi imlecin bulunduğu satırın üstüne yapıştırır. |
Hareket Komutları
Komut |
Açıklama |
w |
Sonraki kelimenin başına gider. |
e |
Sonraki kelimenin sonuna gider. |
b |
Önceki kelimenin başına gider. |
0 |
Satırın başına gider. |
$ |
Satırın sonuna gider. |
1G |
Dosyanın baştaki rakamdaki satırına(ilk satıra) gider. |
G |
Dosyanın sonuna gider. |
Geri Alma Komutları
Komut |
Açıklama |
u |
Son yapılan değişikliği geri alır. |
U |
Satırda yapılan tüm değişiklikleri geri alır. |
Arama Komutları
Komut |
Açıklama |
/kelime |
“kelime” kısmındaki girdi tüm metin içerisinde aranır. |
n |
Aranan değerleri yukarıdan aşağıya doğru tekrar eder. |
N |
Aranan değerleri aşağıdan yukarıya doğru tekrar eder. |
Toplu İşlem Parametreleri
Komut |
Açıklama |
:%s/A/D/flag |
Metin içerisindeki “A” değerini arar ve “D” değeri ile flag bilgisine göre değiştir. |
g |
Bulunan tüm değerleri değiştirir (flag) |
c |
Bulunan değerleri değiştirmeden önce kullanıcıya sorar. (flag) |