Unix / Linux - Tutorial Editor vi

Di bab ini, kita akan memahami cara kerja Editor vi di Unix. Ada banyak cara untuk mengedit file di Unix. Mengedit file menggunakan editor teks berorientasi layarviadalah salah satu cara terbaik. Editor ini memungkinkan Anda untuk mengedit baris dalam konteks dengan baris lain di file.

Versi perbaikan dari editor vi yang disebut VIMjuga telah tersedia sekarang. Di sini, VIM adalah singkatan dariVi IMterbukti.

vi umumnya dianggap sebagai standar de facto di editor Unix karena -

  • Ini biasanya tersedia di semua jenis sistem Unix.

  • Penerapannya sangat mirip di seluruh papan.

  • Ini membutuhkan sumber daya yang sangat sedikit.

  • Ini lebih ramah pengguna daripada editor lain seperti ed atau ex.

Anda bisa menggunakan vieditor untuk mengedit file yang ada atau untuk membuat file baru dari awal. Anda juga dapat menggunakan editor ini untuk hanya membaca file teks.

Memulai Editor vi

Tabel berikut mencantumkan perintah dasar untuk menggunakan editor vi -

Sr.No. Perintah & Deskripsi
1

vi filename

Membuat file baru jika sudah tidak ada, jika tidak membuka file yang sudah ada.

2

vi -R filename

Membuka file yang ada dalam mode hanya-baca.

3

view filename

Membuka file yang ada dalam mode hanya-baca.

Berikut adalah contoh pembuatan file baru testfile jika sudah tidak ada di direktori kerja saat ini -

$vi testfile

Perintah di atas akan menghasilkan output berikut -

|
~
~
~
~
~
~
~
~
~
~
~
~
"testfile" [New File]

Anda akan melihat file tilde(~) di setiap baris yang mengikuti kursor. Tilde mewakili garis yang tidak digunakan. Jika baris tidak dimulai dengan tilde dan tampak kosong, ada spasi, tab, baris baru, atau beberapa karakter yang tidak dapat dilihat lainnya.

Anda sekarang memiliki satu file terbuka untuk mulai dikerjakan. Sebelum melangkah lebih jauh, mari kita pahami beberapa konsep penting.

Mode Operasi

Saat bekerja dengan editor vi, kami biasanya menemukan dua mode berikut -

  • Command mode- Mode ini memungkinkan Anda untuk melakukan tugas administratif seperti menyimpan file, menjalankan perintah, menggerakkan kursor, memotong (menarik) dan menempelkan baris atau kata, serta mencari dan mengganti. Dalam mode ini, apa pun yang Anda ketik diartikan sebagai perintah.

  • Insert mode- Mode ini memungkinkan Anda memasukkan teks ke dalam file. Semua yang diketik dalam mode ini diinterpretasikan sebagai input dan ditempatkan di file.

vi selalu dimulai di command mode. Untuk memasukkan teks, Anda harus berada dalam mode penyisipan yang cukup mengetiki. Untuk keluar dari mode penyisipan, tekanEsc kunci, yang akan membawa Anda kembali ke mode perintah.

Hint- Jika Anda tidak yakin di mode mana Anda berada, tekan tombol Esc dua kali; ini akan membawa Anda ke mode perintah. Anda membuka file menggunakan editor vi. Mulailah dengan mengetik beberapa karakter dan kemudian masuk ke mode perintah untuk memahami perbedaannya.

Keluar dari vi

Perintah untuk keluar dari vi adalah :q. Setelah berada dalam mode perintah, ketik titik dua, dan 'q', diikuti dengan kembali. Jika file Anda telah dimodifikasi dengan cara apa pun, editor akan memperingatkan Anda tentang hal ini, dan tidak membiarkan Anda keluar. Untuk mengabaikan pesan ini, perintah untuk keluar dari vi tanpa menyimpan adalah:q!. Ini memungkinkan Anda keluar dari vi tanpa menyimpan perubahan apa pun.

Perintah untuk menyimpan konten editor adalah :w. Anda dapat menggabungkan perintah di atas dengan perintah keluar, atau gunakan:wq dan kembali.

Cara termudah untuk save your changes and exit viadalah dengan perintah ZZ. Saat Anda berada dalam mode perintah, ketikZZ. ItuZZ perintah bekerja dengan cara yang sama seperti :wq perintah.

Jika Anda ingin menentukan / menyatakan nama tertentu untuk file tersebut, Anda dapat melakukannya dengan menentukannya setelah :w. Misalnya, jika Anda ingin menyimpan file yang sedang Anda kerjakan dengan nama file lainfilename2, Anda akan mengetik :w filename2 dan kembali.

Pindah di dalam File

Untuk berpindah-pindah di dalam file tanpa mempengaruhi teks Anda, Anda harus berada dalam mode perintah (tekan Esc dua kali). Tabel berikut mencantumkan beberapa perintah yang dapat Anda gunakan untuk berpindah-pindah karakter satu per satu -

Sr.No. Perintah & Deskripsi
1

k

Memindahkan kursor ke atas satu baris

2

j

Memindahkan kursor ke bawah satu baris

3

h

Memindahkan kursor ke posisi satu karakter kiri

4

l

Memindahkan kursor ke posisi satu karakter kanan

Poin-poin berikut perlu dipertimbangkan untuk dipindahkan di dalam file -

  • vi peka huruf besar kecil. Anda perlu memperhatikan kapitalisasi saat menggunakan perintah.

  • Kebanyakan perintah di vi dapat diawali dengan berapa kali Anda ingin tindakan tersebut terjadi. Sebagai contoh,2j memindahkan kursor dua baris ke bawah lokasi kursor.

Ada banyak cara lain untuk memindahkan file di vi. Ingatlah bahwa Anda harus berada dalam mode perintah (press Esc twice). Tabel berikut mencantumkan beberapa perintah untuk berpindah di sekitar file -

Sr.No. Perintah & Deskripsi
1

0 or |

Menempatkan kursor di awal baris

2

$

Menempatkan kursor di akhir baris

3

w

Menempatkan kursor ke kata berikutnya

4

b

Memposisikan kursor ke kata sebelumnya

5

(

Menempatkan kursor ke awal kalimat saat ini

6

)

Menempatkan kursor ke awal kalimat berikutnya

7

E

Pindah ke akhir kata dipisahkan kosong

8

{

Memindahkan paragraf ke belakang

9

}

Memindahkan paragraf ke depan

10

[[

Memindahkan satu bagian ke belakang

11

]]

Memindahkan satu bagian ke depan

12

n|

Pindah ke kolom n di baris saat ini

13

1G

Pindah ke baris pertama file

14

G

Pindah ke baris terakhir file

15

nG

Pindah ke nth baris file

16

:n

Pindah ke nth baris file

17

fc

Pindah ke depan c

18

Fc

Pindah kembali ke c

19

H

Pindah ke atas layar

20

nH

Pindah ke nth baris dari atas layar

21

M

Pindah ke tengah layar

22

L

Pindah ke bagian bawah layar

23

nL

Pindah ke nth baris dari bawah layar

24

:x

Titik dua diikuti dengan angka akan memposisikan kursor pada nomor baris yang diwakili oleh x

Perintah Kontrol

Perintah berikut dapat digunakan dengan Tombol Kontrol untuk menjalankan fungsi seperti yang diberikan pada tabel di bawah ini -

Sr.No. Perintah & Deskripsi
1

CTRL+d

Pindah ke depan 1/2 layar

2

CTRL+f

Maju satu layar penuh

3

CTRL+u

Pindah mundur 1/2 layar

4

CTRL+b

Bergerak mundur satu layar penuh

5

CTRL+e

Memindahkan layar ke atas satu baris

6

CTRL+y

Memindahkan layar ke bawah satu baris

7

CTRL+u

Memindahkan layar ke atas 1/2 halaman

8

CTRL+d

Memindahkan layar ke bawah 1/2 halaman

9

CTRL+b

Memindahkan layar ke atas satu halaman

10

CTRL+f

Memindahkan layar ke bawah satu halaman

11

CTRL+I

Gambar ulang layar

Mengedit File

Untuk mengedit file, Anda harus berada dalam mode sisipkan. Ada banyak cara untuk masuk ke mode penyisipan dari mode perintah -

Sr.No. Perintah & Deskripsi
1

i

Menyisipkan teks sebelum lokasi kursor saat ini

2

I

Menyisipkan teks di awal baris saat ini

3

a

Menyisipkan teks setelah lokasi kursor saat ini

4

A

Menyisipkan teks di akhir baris saat ini

5

o

Membuat baris baru untuk entri teks di bawah lokasi kursor

6

O

Membuat baris baru untuk entri teks di atas lokasi kursor

Menghapus Karakter

Berikut adalah daftar perintah penting, yang dapat digunakan untuk menghapus karakter dan baris dalam file yang terbuka -

Sr.No. Perintah & Deskripsi
1

x

Menghapus karakter di bawah lokasi kursor

2

X

Menghapus karakter sebelum lokasi kursor

3

dw

Menghapus dari lokasi kursor saat ini ke kata berikutnya

4

d^

Menghapus dari posisi kursor saat ini ke awal baris

5

d$

Menghapus dari posisi kursor saat ini ke akhir baris

6

D

Menghapus dari posisi kursor ke akhir baris saat ini

7

dd

Menghapus garis tempat kursor berada

Seperti disebutkan di atas, sebagian besar perintah di vi dapat diawali dengan berapa kali Anda ingin tindakan tersebut terjadi. Sebagai contoh,2x menghapus dua karakter di bawah lokasi kursor dan 2dd menghapus dua baris tempat kursor berada.

Direkomendasikan agar perintah dipraktekkan sebelum kita melanjutkan lebih jauh.

Ubah Perintah

Anda juga memiliki kemampuan untuk mengubah karakter, kata, atau baris dalam vi tanpa menghapusnya. Berikut adalah perintah yang relevan -

Sr.No. Perintah & Deskripsi
1

cc

Menghapus konten baris, membiarkan Anda dalam mode penyisipan.

2

cw

Mengubah kata tempat kursor berada dari kursor ke huruf kecil w akhir kata.

3

r

Mengganti karakter di bawah kursor. vi kembali ke mode perintah setelah penggantian dimasukkan.

4

R

Menimpa beberapa karakter yang dimulai dengan karakter yang saat ini berada di bawah kursor. Anda harus menggunakanEsc untuk menghentikan penimpaan.

5

s

Mengganti karakter saat ini dengan karakter yang Anda ketik. Setelah itu, Anda dibiarkan dalam mode penyisipan.

6

S

Menghapus garis tempat kursor berada dan menggantinya dengan teks baru. Setelah teks baru dimasukkan, vi tetap dalam mode penyisipan.

Salin dan Tempel Perintah

Anda dapat menyalin baris atau kata dari satu tempat dan kemudian Anda dapat menempelkannya di tempat lain menggunakan perintah berikut -

Sr.No. Perintah & Deskripsi
1

yy

Menyalin baris saat ini.

2

yw

Menyalin kata saat ini dari karakter tempat kursor w huruf kecil berada, sampai akhir kata.

3

p

Menempatkan teks yang disalin setelah kursor.

4

P

Menempatkan teks yang ditarik di depan kursor.

Perintah Lanjutan

Ada beberapa perintah lanjutan yang menyederhanakan pengeditan sehari-hari dan memungkinkan penggunaan vi yang lebih efisien -

Sr.No. Perintah & Deskripsi
1

J

Menggabungkan baris saat ini dengan baris berikutnya. Jumlah perintah j bergabung dengan banyak baris.

2

<<

Menggeser garis saat ini ke kiri dengan satu lebar pergeseran.

3

>>

Menggeser garis saat ini ke kanan dengan satu lebar pergeseran.

4

~

Mengganti kapitalisasi karakter di bawah kursor.

5

^G

Tekan Ctrl dan tombol G secara bersamaan untuk menampilkan nama file saat ini dan statusnya.

6

U

Mengembalikan baris saat ini ke keadaan sebelum kursor memasuki baris.

7

u

Ini membantu membatalkan perubahan terakhir yang dilakukan dalam file. Mengetik 'u' lagi akan melakukan perubahan kembali.

8

J

Menggabungkan baris saat ini dengan baris berikutnya. Sebuah hitungan bergabung dengan banyak baris itu.

9

:f

Menampilkan posisi saat ini dalam file dalam% dan nama file, jumlah total file.

10

:f filename

Ubah nama file saat ini menjadi nama file.

11

:w filename

Menulis ke nama file file.

12

:e filename

Membuka file lain dengan nama file.

13

:cd dirname

Mengubah direktori kerja saat ini menjadi dirname.

14

:e #

Beralih di antara dua file terbuka.

15

:n

Jika Anda membuka banyak file menggunakan vi, gunakan :n untuk beralih ke file berikutnya dalam rangkaian ini.

16

:p

Jika Anda membuka banyak file menggunakan vi, gunakan :p untuk membuka file sebelumnya dalam rangkaian.

17

:N

Jika Anda membuka banyak file menggunakan vi, gunakan :N untuk membuka file sebelumnya dalam rangkaian.

18

:r file

Membaca file dan menyisipkannya setelah baris saat ini.

19

:nr file

Membaca file dan menyisipkannya setelah baris n.

Pencarian Kata dan Karakter

Editor vi memiliki dua jenis pencarian: string dan character. Untuk pencarian string, file/ dan ?perintah digunakan. Saat Anda memulai perintah ini, perintah yang baru saja diketik akan ditampilkan di baris terakhir layar, tempat Anda mengetik string tertentu yang akan dicari.

Kedua perintah ini hanya berbeda dalam arah pencarian dilakukan -

  • Itu / perintah mencari ke depan (ke bawah) dalam file.

  • Itu ? perintah mencari mundur (ke atas) dalam file.

Itu n dan Nperintah ulangi perintah pencarian sebelumnya dalam arah yang sama atau berlawanan. Beberapa karakter memiliki arti khusus. Karakter ini harus diawali dengan garis miring terbalik (\) untuk disertakan sebagai bagian dari ekspresi penelusuran.

Sr.No. Deskripsi karakter
1

^

Pencarian di awal baris (Gunakan di awal ekspresi pencarian).

2

.

Cocok dengan satu karakter.

3

*

Tidak ada yang cocok atau lebih dari karakter sebelumnya.

4

$

Akhir baris (Gunakan di akhir ekspresi pencarian).

5

[

Memulai sekumpulan ekspresi yang cocok atau tidak cocok.

6

<

Ini dimasukkan ke dalam ekspresi melarikan diri dengan garis miring terbalik untuk menemukan akhir atau awal kata.

7

>

Ini membantu melihat '<'deskripsi karakter di atas.

Pencarian karakter mencari dalam satu baris untuk menemukan karakter yang dimasukkan setelah perintah. Ituf dan F perintah mencari karakter di baris saat ini saja. f mencari ke depan dan F mencari mundur dan kursor berpindah ke posisi karakter yang ditemukan.

Itu t dan T perintah mencari karakter pada baris saat ini saja, tetapi untuk t, kursor berpindah ke posisi sebelum karakter, dan T mencari baris mundur ke posisi setelah karakter.

Atur Perintah

Anda dapat mengubah tampilan dan nuansa layar vi Anda menggunakan yang berikut ini :setperintah. Setelah Anda berada dalam mode perintah, ketik:set diikuti oleh salah satu dari perintah berikut.

Sr.No. Perintah & Deskripsi
1

:set ic

Mengabaikan kasus saat mencari

2

:set ai

Setel autoindent

3

:set noai

Tidak menyetel autoindent

4

:set nu

Menampilkan baris dengan nomor baris di sisi kiri

5

:set sw

Menyetel lebar tabstop perangkat lunak. Misalnya, Anda akan menetapkan lebar pergeseran 4 dengan perintah ini -:set sw = 4

6

:set ws

Jika wrapscan diatur, dan kata tidak ditemukan di bagian bawah file, ia akan mencoba mencarinya di awal

7

:set wm

Jika opsi ini memiliki nilai lebih dari nol, editor secara otomatis akan "membungkus kata". Misalnya, untuk mengatur margin bungkus menjadi dua karakter, Anda akan mengetik ini::set wm = 2

8

:set ro

Mengubah jenis file menjadi "hanya baca"

9

:set term

Mencetak tipe terminal

10

:set bf

Buang karakter kontrol dari input

Menjalankan Perintah

Vi memiliki kemampuan untuk menjalankan perintah dari dalam editor. Untuk menjalankan perintah, Anda hanya perlu masuk ke mode dan ketik perintah:! perintah.

Misalnya, jika Anda ingin memeriksa apakah suatu file ada sebelum Anda mencoba menyimpan file Anda dengan nama file itu, Anda dapat mengetik :! ls dan Anda akan melihat hasil ls di layar.

Anda dapat menekan tombol apa saja (atau urutan escape dari perintah) untuk kembali ke sesi vi Anda.

Mengganti Teks

Perintah substitusi (:s/) memungkinkan Anda dengan cepat mengganti kata atau kelompok kata dalam file Anda. Berikut ini adalah sintaks untuk mengganti teks -

:s/search/replace/g

Itu gsingkatan global. Hasil dari perintah ini adalah semua kejadian pada baris kursor diubah.

Poin Penting untuk Dicatat

Poin-poin berikut akan menambah kesuksesan Anda dengan vi -

  • Anda harus berada dalam mode perintah untuk menggunakan perintah. (Tekan Esc dua kali kapan saja untuk memastikan bahwa Anda berada dalam mode perintah.)

  • Anda harus berhati-hati dengan perintah. Ini peka huruf besar / kecil.

  • Anda harus berada dalam mode sisipkan untuk memasukkan teks.