Artikel ini membawakan anda analisis terperinci tentang arahan vi Editor vi ialah editor standard di bawah semua sistem Unix dan Linux. Saya harap ia akan membantu semua orang .
Ini hanyalah pengenalan ringkas kepada penggunaannya dan sebahagian kecil arahan. Memandangkan editor vi adalah sama untuk mana-mana versi sistem Unix dan Linux, anda boleh mengetahui lebih lanjut mengenainya di mana sahaja vi diperkenalkan. Vi juga merupakan penyunting teks paling asas dalam Linux Selepas mempelajarinya, anda tidak akan menghadapi masalah dalam dunia Linux.
1, konsep asas vi
Pada asasnya vi boleh dibahagikan kepada tiga keadaan iaitu mod arahan (command mode), mod insert (Mod Sisipan) dan mod baris bawah (mod baris terakhir), fungsi setiap mod dibezakan seperti berikut:
1) mod arahan mod baris arahan)
Kawal pergerakan kursor skrin, pemadaman aksara, perkataan atau baris, gerakkan dan salin bahagian dan masukkan mod Sisip, atau pergi ke mod baris terakhir.
2) Mod Sisip (Mod Sisip)
Hanya dalam mod Sisip, Sahaja kemudian bolehkah anda memasukkan teks, dan tekan kekunci "ESC" untuk kembali ke mod baris arahan.
3) Mod baris terakhir (mod baris terakhir)
Simpan fail atau keluar dari vi, anda juga boleh menetapkan persekitaran penyuntingan, seperti sebagai mencari rentetan aksara, senaraikan nombor baris...dsb.
Namun, secara amnya apabila kita menggunakan vi, kita mudahkan vi kepada dua mod iaitu mod baris terakhir (mod baris terakhir) turut disertakan dalam mod baris arahan (mod perintah).
2, operasi asas vi
a) Masukkan vi
Selepas memasukkan vi dan nama fail pada gesaan sistem, selepas memasukkan vi, anda berada dalam "mod arahan (mod arahan)". Orang yang pertama kali menggunakan vi akan mahu menggunakan kekunci atas, bawah, kiri dan kanan untuk menggerakkan kursor terlebih dahulu Akibatnya, komputer akan berbunyi bip, yang menyebabkan mereka marah sehingga mati. t bergerak dan tukar kepada "Mod Sisip".
b) Tukar ke mod Sisip untuk mengedit fail
Klik huruf dalam "mod arahan" "i" akan masuk "Mod Sisipkan ", dan kemudian anda boleh mula memasukkan teks.
c) Penukaran Sisipan
Pada masa ini dalam "mod Sisipan", anda hanya boleh terus memasukkan teks jika anda mendapati anda kalah salah kata! Jika anda ingin menggunakan kekunci kursor untuk bergerak ke belakang dan memadam perkataan, anda mesti terlebih dahulu menekan kekunci "ESC" untuk pergi ke "mod arahan (mod arahan)" dan kemudian memadam perkataan itu.
d) Keluar dari vi dan simpan fail
Dalam "mod arahan (mod arahan)", klik kekunci bertindih ":" Enter "Mod baris terakhir", contohnya:
: w nama fail (masukkan "w nama fail" untuk menyimpan artikel dengan nama fail nama fail yang ditentukan)
: wq (masukkan "wq", simpan dan Keluar vi)
: q! (Masukkan q! untuk memaksa keluar vi tanpa menyimpan)
3, kekunci fungsi mod arahan
1). Mod sisip
Tekan "i" untuk beralih ke mod masukkan "mod masukkan", tekan "i" untuk masuk mod Sisip Selepas , input fail bermula dari kedudukan semasa kursor;
Selepas menekan "a" untuk memasuki mod sisip, input teks bermula dari kedudukan di sebelah kedudukan kursor semasa; " Selepas memasuki mod sisip, baris baharu dimasukkan dan teks dimasukkan bermula dari permulaan baris.
2). Tukar daripada mod sisip ke mod baris arahan Tekan kekunci "ESC".
3). Gerakkan kursor vi boleh terus menggunakan kursor pada papan kekunci untuk bergerak ke atas, bawah, kiri dan kanan, tetapi biasa vi menggunakan huruf kecil Inggeris Huruf "h", "j", "k", dan "l" mengawal kursor untuk menggerakkan satu ruang masing-masing ke kiri, bawah, atas dan kanan.
Tekan "ctrl" "b": skrin menggerakkan "kembali" satu halaman.
Tekan "ctrl" "f": skrin bergerak "ke hadapan" satu halaman.
Tekan "ctrl" "u": skrin menggerakkan separuh halaman "kembali".
Tekan "ctrl" "d": skrin bergerak "ke hadapan" sebanyak setengah halaman.
Tekan nombor "0": beralih ke permulaan artikel.
Tekan "G": beralih ke penghujung artikel.
Tekan "$": Beralih ke "hujung" baris di mana kursor berada.
Tekan "^": beralih ke "permulaan" baris di mana kursor berada
Tekan "w": kursor melompat ke perkataan seterusnya Permulaan
Tekan "e": kursor melompat ke hujung perkataan seterusnya
Tekan "b ": kursor kembali ke sebelumnya Permulaan perkataan
Tekan "#l": kursor bergerak ke kedudukan ke-# baris, seperti: 5l, 56l .
4). ia Satu aksara "di belakang" kedudukan kursor.
5
"yw": Salin aksara daripada kursor ke hujung perkataan ke dalam penimbal.
6
"r": Gantikan aksara di mana kursor ialah .
7
8). Tukar
"cw": Tukar perkataan di mana kursor berada di hujung perkataan "c#w": Contohnya, "c3w" bermaksud menukar 3 aksara
"ctrl" "g" menyenaraikan nombor baris baris di mana kursor berada. "#G": Contohnya, "15G" bermaksud mengalihkan kursor ke permulaan baris 15 artikel.
A) Senaraikan nombor baris
"set nu": Selepas memasukkan "set nu", ia akan berada di hadapan setiap baris dalam fail Senaraikan nombor baris.
B) Lompat ke baris tertentu dalam fail
「#」: Tanda 「#」 mewakili nombor, masukkan satu selepas kolon Jika anda memasukkan nombor 15 dan tekan Enter sekali lagi, anda akan melompat ke baris ke-15 artikel.
C) Cari aksara
「/Kata Kunci」: Tekan kekunci 「/」 dahulu, kemudian masukkan aksara yang anda mahu cari kali pertama Jika kata kunci yang anda cari bukan yang anda mahukan, anda boleh terus menekan "n" untuk mencari lebih jauh sehingga anda menemui kata kunci yang anda inginkan.
"? Kata kunci": Tekan kekunci "?" dahulu, dan kemudian masukkan aksara yang anda ingin cari Jika kata kunci yang anda cari buat kali pertama bukan yang anda inginkan, anda boleh terus menekan "n" untuk pergi ke hadapan.
D) Simpan fail
「w」: Masukkan huruf "w" dalam kolon untuk menyimpan fail.
E) Tinggalkan vi
「q」: Tekan "q" untuk keluar Jika anda tidak boleh keluar dari vi, anda boleh ikut "q " A "!" memaksa anda meninggalkan vi.
"qw": Biasanya disyorkan untuk menggunakannya dengan "w" apabila keluar, supaya fail boleh disimpan apabila keluar.
5, vi senarai arahan
1, Jadual berikut menyenaraikan beberapa kekunci dalam mod arahan Fungsi :
h Gerakkan kursor satu aksara ke kiri
l Gerakkan kursor satu aksara ke kanan
kAlihkan kursor satu baris ke atas
jAlihkan kursor satu baris ke bawah
^Alihkan kursor ke permulaan baris
0 nombor "0", kursor bergerak ke permulaan artikel
G Kursor bergerak ke penghujung artikel
$ Gerakkan kursor ke hujung baris
Ctrl f untuk menatal ke hadapan
Ctrl b untuk menatal ke belakang
Ctrl d untuk memusing separuh skrin ke hadapan
Ctrl u untuk memusing separuh skrin ke belakang
i Masukkan aksara sebelum kedudukan kursor
aMula menambah aksara selepas kedudukan kursor
oMasukkan baris baharu, mula menaip dari awal baris
ESC kembali dari keadaan input kepada keadaan arahan
xPadam aksara selepas kursor
#xPadam aksara selepas kursor # aksara
X (kapital X), padamkan aksara sebelum kursor
#
2, Jadual berikut menyenaraikan beberapa arahan dalam mod arahan baris
Buat pertama kali menggunakan vi, terdapat beberapa perkara yang perlu diberi perhatian:
1. Selepas membuka fail dengan vi, ia berada dalam "mod arahan". Kaedah penukaran: Klik huruf "i" dalam "mod arahan" untuk memasuki "Mod Sisipkan". Pada masa ini, anda boleh mula memasukkan teks.
2. Selepas mengedit, anda perlu bertukar daripada mod sisip ke mod baris arahan untuk menyimpan fail: tekan kekunci "ESC".
3. Simpan dan keluar dari fail: Masukkan: wq dalam mod arahan! (Jangan lupa wq di hadapan:)
Bergerak pada skrin
Vi menyediakan tiga pilihan untuk menggerakkan kursor merentasi skrin penuh dan fail itu sendiri melakukannya bukan tatal. Mereka adalah arahan H, M dan L masing-masing.
HArahan
Arahan ini menggerakkan kursor ke permulaan baris pertama skrin (iaitu sudut kiri atas) , yang merupakan baris pertama skrin semasa, bukannya baris pertama bagi keseluruhan fail. Gunakan arahan ini untuk mengalihkan kursor ke bahagian atas skrin dengan cepat. Jika nombor n ditambah sebelum arahan H, kursor akan dialihkan ke permulaan baris ke-n.
MArahan
Arahan ini menggerakkan kursor ke permulaan baris tengah fail paparan skrin. Iaitu, jika skrin semasa penuh, beralih ke garis tengah keseluruhan skrin; Gunakan arahan ini untuk mengalihkan kursor dengan cepat dari mana-mana kedudukan pada skrin ke permulaan baris tengah fail paparan skrin. Sebagai contoh, dalam kes paparan skrin di atas (tidak kira di mana kursor berada pada skrin), dalam mod arahan, selepas memasukkan arahan M, kursor akan bergerak ke huruf a pada baris tambah.
Perlu juga dinyatakan bahawa menggunakan arahan dM akan memadamkan semua kandungan daripada baris semasa kursor ke baris tengah fail yang dipaparkan pada skrin.
LArahan
Apabila kandungan paparan fail melebihi satu skrin, arahan ini menggerakkan kursor ke permulaan baris bawah pada skrin ; Apabila kandungan paparan fail kurang daripada satu skrin, arahan ini menggerakkan kursor ke permulaan baris terakhir fail. Ia boleh dilihat bahawa menggunakan arahan ini boleh dengan cepat dan tepat menggerakkan kursor ke bahagian bawah skrin atau baris terakhir fail. Jika anda menambah nombor n sebelum arahan L, kursor akan dialihkan ke permulaan baris ke-n dari bahagian bawah skrin. Sebagai contoh, dalam kes paparan skrin di atas (tidak kira di mana kursor berada pada skrin), dalam mod arahan, selepas memasukkan arahan 3L, kursor akan bergerak ke huruf x pada baris x.
Perlu juga dinyatakan bahawa menggunakan arahan dL akan memadamkan semua kandungan daripada baris semasa kursor ke baris bawah skrin.
Gerakkan kursor mengikut perkataan
Mula-mula, mari perkenalkan konsep "perkataan" dalam Vi. "Perkataan" mempunyai dua makna dalam Vi. Satu ialah perkataan yang luas, yang boleh menjadi apa-apa di antara dua ruang. Jenis perkataan lain ialah perkataan dalam erti kata yang sempit Dalam pengertian ini, perkataan Inggeris, tanda baca dan aksara bukan abjad (seperti!, @, #, $, %, ^, &, *, (,), -. , , {, }, [, ], ~, |, ", <, >, /, dsb.) dianggap sebagai satu perkataan. Oleh itu, baris di atas termasuk empat aksara {, int, k,; .
Menggunakan perintah huruf besar dalam Vi secara amnya bermaksud memperlakukan perkataan dalam erti kata yang luas, dan menggunakan perintah huruf kecil bermakna memperlakukannya dalam erti kata yang sempit
Vi menyediakan sejumlah tiga set perintah untuk memindahkan kursor mengikut perkataan, iaitu:
wdan perintah W Gerakkan kursor tepat ke permulaan perkataan seterusnya; 🎜>
e dan arahan Ejika kursor bermula Jika kedudukan permulaan berada dalam perkataan (iaitu, bukan di hujung perkataan), arahan ini akan mengalihkan kursor ke hujung perkataan; jika kedudukan permulaan kursor berada di hujung perkataan, arahan ini akan mengalihkan kursor ke hujung perkataan seterusnya >b dan B
Jika kursor berada dalam perkataan (iaitu bukan pada permulaan perkataan), arahan ini akan menggerakkan kursor ke perkataan ini Permulaan perkataan perkataan; jika kursor berada di permulaan perkataan semasa, arahan ini akan mengalihkan kursor ke permulaan perkataan sebelumnyaAlihkan kursor mengikut ayat
dalam Vi. Dalam , ayat ditakrifkan sebagai berakhir dengan koma (,), noktah (.), tanda tanya (?), dan tanda seru (!), diikuti dengan sekurang-kurangnya dua (termasuk dua) ruang atau aksara baris baharu . Urutan. Vi menyediakan dua perintah untuk menggerakkan kursor mengikut ayat, iaitu:1
Alihkan kursor ke permulaan ayat sebelumnya.
2. ) Perintah
Arahan ini menggerakkan kursor ke permulaan ayat seterusnya.
Gerakkan kursor mengikut segmen
Dalam Vi, segmen ditakrifkan sebagai serpihan yang bermula dan berakhir dengan garis kosong. Vi menyediakan dua arahan untuk menggerakkan kursor mengikut segmen, iaitu:
1 perintah {
Arahan ini menggerakkan kursor ke hadapan Alih ke. permulaan perenggan sebelumnya;
2 } Perintah
Arahan ini menggerakkan kursor ke belakang ke permulaan perenggan seterusnya.
Tatal skrin
Arahan skrin menggerakkan kursor dalam unit skrin dan selalunya digunakan untuk menatal dan fail halaman. Perlu diingatkan bahawa arahan skrin bukan arahan pergerakan kursor dan tidak boleh digunakan sebagai penentu teks dalam arahan padam.
Arahan menatal skrin boleh digunakan dalam kedua-dua mod arahan dan mod input teks.
1. Perintah tatal
Terdapat dua perintah tatal:
· < skrin ke hadapan (ke arah kepala fail);
Anda boleh menambah nombor n sebelum kedua-dua arahan ini dan skrin akan menatal ke hadapan atau ke belakang n baris. Dan nilai ini diingati oleh sistem Apabila anda menggunakan perintah < dan Ctrl d >
2.Perintah pagingTerdapat juga dua arahan paging:
· < seluruh skrin (iaitu satu halaman) ke arah penghujung fail; <
Anda juga boleh menambah nombor n sebelum kedua-dua arahan ini untuk mengalihkan skrin ke hadapan atau ke belakang n halaman.
3. Perintah status< Ctrl G >arahan memaparkan maklumat status vi pada baris status vi, termasuk yang sedang disunting Nama fail, sama ada ia telah diubah suai, nombor baris semasa, bilangan baris dalam fail dan peratusan baris sebelum kursor dalam keseluruhan fail.
4. Arahan sifar skrinVi menyediakan tiga arahan yang berkaitan dengan sifar skrin. Formatnya ialah: · [nombor baris] z [bilangan baris]
· [nombor baris] z [bilangan baris] .
· [Nombor baris] z [Bilangan baris] _
Jika nombor baris dan nombor baris ditinggalkan, ketiga-tiga arahan ini masing-masing akan menggunakan baris semasa di mana kursor terletak sebagai baris pertama, baris tengah dan terakhir. garisan skrin dipaparkan semula jika nombor baris diberikan, baris yang sepadan dengan nombor baris dipaparkan sebagai baris semasa di baris pertama, tengah dan terakhir pada skrin; ia menentukan baris yang dipaparkan pada nombor skrin.
[Contoh 13]
8z16
15z .: Gunakan baris ke-15 dalam fail sebagai garis tengah paparan skrin dan bilangan baris yang dipaparkan ialah keseluruhan skrin.
15z 5_: Gunakan baris ke-15 dalam fail sebagai baris terakhir yang dipaparkan pada skrin, dan bilangan baris yang dipaparkan ialah 5 baris.
Operasi sisipan teks
Dalam mod arahan, mana-mana aksara yang dimasukkan oleh pengguna akan ditafsirkan dan dilaksanakan oleh Vi sebagai arahan Jika pengguna ingin menganggap aksara yang dimasukkan sebagai kandungan teks, terlebih dahulu Mod kerja Vi harus ditukar daripada mod arahan kepada mod input teks. Cara untuk menukar adalah dengan menggunakan arahan berikut.
Arahan SisipkanVi menyediakan dua arahan sisipan: i dan I. Perintah
iSisipkan teks bermula dari sebelum kedudukan kursor, dan anda boleh menggunakan kekunci untuk memadam input yang salah semasa proses pemasukan. Pada masa ini, Vi berada dalam keadaan sisipan, dan perkataan "--INSERT--" (insert) dipaparkan pada baris bawah skrin.
IArahanArahan ini menggerakkan kursor ke permulaan baris semasa dan memasukkan teks sebelumnya. Tambah arahan
Vi menyediakan dua arahan sisipan tambah: a dan A.
aPerintahArahan ini digunakan untuk menambahkan teks baharu selepas kedudukan kursor semasa. Teks yang baru dimasukkan diletakkan selepas kursor, dan teks asal di belakang kursor akan dialihkan ke belakang dengan sewajarnya. Kursor boleh berada di mana-mana sahaja pada baris. AArahan Perbezaan antara arahan ini dan arahan a ialah arahan A akan menggerakkan kursor ke hujung baris , dari sana Mula memasukkan teks baharu. Apabila arahan A dimasukkan, kursor secara automatik bergerak ke penghujung baris. Arahan a dan A ialah satu-satunya cara untuk memasukkan teks ke hujung baris. Arahan terbuka Sama ada arahan Sisip atau arahan tambah, kandungan yang disisipkan bermula dari kedudukan tertentu dalam baris semasa. Jika kita ingin memasukkan beberapa baris baru sebelum atau selepas baris tertentu, kita harus menggunakan arahan terbuka. Vi menyediakan dua arahan terbuka: o dan O. oArahan Arahan ini akan membuka baris baharu di bawah baris di mana kursor berada, dan meletakkan kursor pada permulaan baris. Menunggu teks dimasukkan. Perlu diingatkan bahawa apabila menggunakan aksara padam, hanya aksara selepas kedudukan permulaan mod sisip boleh dipadam, dan aksara sebelumnya tidak akan berfungsi. Anda juga boleh memasukkan beberapa aksara kawalan dalam mod input teks Contohnya, Ctrl l memasukkan pemisah halaman, yang dipaparkan sebagai ^L. Perintah O adalah bertentangan dengan arahan o Arahan O memasukkan baris di atas baris tempat kursor berada dan meletakkannya kursor pada baris itu pada permulaan baris, menunggu teks untuk dimasukkan. 11.3.4Pengubahsuaian teks Dalam mod arahan, anda boleh menggunakan pelbagai arahan berkaitan yang disediakan oleh Vi untuk mengubah suai teks Buat pengubahsuaian, termasuk pemadaman, penyalinan, penggantian dan penggantian kandungan teks. Pemadaman teks Semasa mengedit teks, kita selalunya perlu memadamkan beberapa teks yang tidak diperlukan Kita boleh menggunakan kekunci untuk memadam teks yang dimasukkan dengan salah atau tidak diperlukan, tetapi terdapat had pada masa ini ke permulaan baris, adalah mustahil untuk memadam kandungan baris di atas. Dalam mod arahan, Vi menyediakan banyak arahan pemadaman. Kebanyakan arahan ini bermula dengan d. Yang biasa digunakan ialah: 1 Padam satu aksara x: Padamkan aksara pada kursor. Jika nombor n ditambah sebelum x, n aksara di sebelah kanan bermula dari kedudukan kursor akan dipadamkan. X: Padamkan aksara di hadapan kursor. Jika nombor n ditambah sebelum X, n aksara ke kiri bermula daripada aksara sebelum kursor dipadamkan. Jelas sekali kedua-dua arahan ini adalah cara cepat untuk memadamkan sebilangan kecil aksara. 2 Padamkan berbilang aksara dd: Padamkan keseluruhan baris tempat kursor berada. Anda boleh menambah nombor n sebelum dd untuk memadam baris semasa dan baris n-1 berikut. D atau d$: Kedua-dua arahan mempunyai fungsi yang sama, kedua-duanya memadam kandungan dari kursor ke hujung baris. d0: Padamkan kandungan bermula daripada aksara sebelum kursor hingga ke permulaan baris. dw: Padamkan perkataan. Jika kursor berada di tengah-tengah perkataan, padamkan daripada kedudukan kursor ke penghujung perkataan. Seperti arahan dd, anda boleh menambah nombor n sebelum dw untuk memadam n perkataan yang ditentukan. Tidak kira jika pengguna secara tidak sengaja memadamkan teks secara tidak sengaja Vi menyediakan arahan untuk memulihkan operasi yang salah, dan kandungan yang dipulihkan boleh dialihkan dan diletakkan di mana-mana dalam teks. Arahan pemulihan menggunakan ² np, dengan n ialah nombor daftar. Ini kerana terdapat 9 daftar di dalam Vi digunakan untuk mengekalkan operasi pemadaman, masing-masing diwakili oleh nombor 1, 2, ¼, dan 9 Mereka menyimpan kandungan yang dipadamkan oleh arahan dd pada masa lalu. Daftar ini membentuk baris gilir Contohnya, kandungan terkini yang dipadam menggunakan arahan dd diletakkan dalam daftar 1 apabila arahan dd digunakan untuk memadam kandungan teks, Vi akan memindahkan kandungan daftar 1 ke daftar 2; dan daftar 1 akan menjadi kandungan yang dipadamkan oleh arahan dd terkini. Dengan analogi, Vi boleh menyimpan sembilan kandungan terakhir yang dipadamkan dengan arahan dd, manakala kandungan sebelumnya yang dipadam dengan arahan dd dibuang. Dalam mod baris terakhir, anda juga boleh memadamkan kandungan fail, tetapi ia hanya boleh memadamkan keseluruhan baris Semua baris dalam julat yang ditentukan (nombor baris permulaan, nombor baris penamat) boleh dipadamkan pada satu masa . Padamkan semuanya. Perlu diingat bahawa apabila memadam dengan cara ini, Vi tidak meletakkan kandungan yang dipadam ke dalam daftar Oleh itu, apabila pemadaman tidak sengaja berlaku, arahan ² np tidak boleh digunakan untuk memulihkan, dan hanya arahan u boleh digunakan untuk terhad. pemulihan. Akhir sekali, bagaimana untuk memadam teks yang dimasukkan dalam mod input teks. Pengguna hanya boleh menggunakan kombinasi kekunci Pada masa ini, kursor akan kembali ke kedudukan di mana sisipan bermula, dan Vi masih dalam mod input teks. Batalkan perintah sebelumnya (Buat asal) Batalkan perintah sebelumnya (Buat asal), juga dikenali sebagai perintah pemulihan, adalah perintah yang sangat berguna, ia boleh membatalkan arahan sebelumnya Kesan penyalahgunaan atau operasi yang tidak sesuai pada fail, mengembalikannya kepada keadaan sebelum penyalahgunaan atau operasi yang tidak sesuai dilakukan. Terdapat dua bentuk untuk membatalkan arahan sebelumnya, taip aksara u dan U dalam mod arahan. Fungsi mereka adalah untuk membatalkan arahan yang baru dimasukkan dan memulihkan keadaan asal. Huruf kecil u dan huruf besar U berbeza dalam butiran khusus Perbezaan antara kedua-duanya ialah fungsi perintah U huruf besar adalah untuk memulihkan keadaan sebelum perintah itu tersilap dikendalikan, iaitu jika arahan U digunakan selepas memasukkan arahan, kandungan yang baru dimasukkan akan dipadamkan; Jika anda memadamkan arahan dan kemudian menggunakan arahan U, ia sama dengan memasukkan kandungan yang baru anda padamkan pada kursor. Semua arahan yang mengubah suai teks dianggap sebagai arahan sisipan di sini. Dalam erti kata lain, arahan U hanya boleh membatalkan operasi sebelumnya Jika anda menggunakan arahan U untuk membatalkan operasi sebelumnya, apabila anda menekan kekunci U sekali lagi, ia tidak akan membuat asal operasi sebelumnya, tetapi operasi hanya dilakukan oleh U. Maksudnya, ia dipulihkan kepada keadaan sebelum penggunaan pertama arahan U, dan hasilnya tiada apa yang dilakukan. Fungsi arahan huruf kecil u adalah untuk memulihkan baris semasa kepada keadaan sebelum ia diedit, tidak kira berapa kali baris itu telah diedit. Nota: Anda masih boleh menggunakan perintah batal untuk perintah batal. Pada masa ini, kesan "negatif membuat positif" akan dihasilkan, dan status fail akan dipulihkan kepada keadaan sebelum pelaksanaan pertama perintah batal, seolah-olah tiada operasi dilakukan. Sebagai contoh, dalam contoh di atas, jika anda menggunakan arahan U sekali lagi, kandungan yang dipaparkan pada skrin akan tetap menjadi kandungan yang disisipkan. Arahan Ulang (Buat Semula) Arahan Ulang juga merupakan arahan yang sangat biasa digunakan. Dalam penyuntingan teks, kita sering menghadapi keperluan untuk mengulangi beberapa operasi secara mekanikal Dalam kes ini, kita perlu menggunakan arahan ulang. Ia membolehkan pengguna dengan mudah melaksanakan perintah kompleks yang baru sahaja selesai sebelum ini. Perintah ulang hanya boleh berfungsi dalam mod arahan, hanya tekan kekunci "." Apabila melaksanakan arahan berulang, hasilnya bergantung pada kedudukan semasa kursor. Pengubahsuaian kandungan teks Pengubahsuaian kandungan teks bermaksud semasa proses penyuntingan, aksara tertentu dan baris tertentu dalam teks boleh diubah suai, iaitu menggunakan The teks yang baru dimasukkan menggantikan teks lama yang perlu diubah suai Ia sama dengan menggunakan arahan padam untuk memadam kandungan yang perlu diubah suai, dan kemudian menggunakan arahan sisip untuk memasukkan kandungan baharu. Oleh itu, selepas menggunakan arahan pengubahsuaian, vi memasuki mod input teks Selepas memasukkan kandungan baharu, pastikan anda menekan semula ke mod arahan, jika tidak Vi akan sentiasa berfikir bahawa ia berada dalam mod input teks, dan sebarang kandungan yang dimasukkan pada. kali ini Semua dianggap kandungan baharu yang diubah suai. Vi menyediakan tiga arahan pengubahsuaian iaitu c, C dan cc. Julat teks yang mereka ubah suai dihadkan oleh kedua-dua kedudukan kursor dan arahan pergerakan kursor. Tiga arahan pengubahsuaian ini diperkenalkan di bawah. cArahan c diikuti dengan arahan pergerakan kursor, yang mengehadkan skop kandungan yang diubah suai untuk bermula dari kedudukan semasa kursor ke kedudukan yang ditentukan. Julat teks yang diubah suai dalam perintah c dihadkan oleh kedua-dua kedudukan kursor dan arahan pergerakan kursor. C, arahan c$ Arahan C, c$ boleh mengubah suai daripada kedudukan semasa kursor ke hujung baris atau dari kedudukan semasa kursor Kandungan dari awal hingga akhir baris. Apabila nombor n ditambah sebelum arahan C, ini bermakna kandungan bilangan baris yang ditentukan boleh diubah suai. Sebagai contoh, arahan 3C bermaksud untuk memadam kandungan daripada aksara pada kedudukan kursor (perhatikan bukan keseluruhan baris) kepada dua baris keseluruhan berikut, dan menggantikannya dengan kandungan yang dimasukkan kemudiannya. ccArahan Fungsi arahan cc adalah sama seperti C, kecuali skop pengubahsuaian adalah berbeza daripada C. Ia mengubah suai baris bermula dari kursor Kandungan dalam julat dari kedudukan permulaan (tidak kira lajur mana kursor berada dalam baris) ke penghujung baris atau penghujung baris yang ditentukan. Keseluruhan kandungan baris tempat kursor berada digantikan dengan kandungan yang baru dimasukkan. Sama seperti arahan C, anda juga boleh menambah nombor n sebelum cc untuk menunjukkan bahawa anda ingin mengubah suai sejumlah n baris bermula dari baris semasa kursor. Contohnya, 5cc bermaksud memadamkan baris di mana kursor berada dan 4 baris di bawahnya dahulu, kemudian masukkan kandungan yang akan diubah suai. Penggantian teks Penggantian teks adalah untuk menggantikan teks sedia ada dengan teks yang baru dimasukkan. Ia sama seperti pengubahsuaian teks Ia juga melakukan operasi pemadaman dahulu dan kemudian operasi sisipan. Arahan ganti yang disediakan oleh Vi termasuk perintah ganti, perintah ganti dan perintah ganti perkataan. 1. Perintah penggantian: r dan R r: Gantikan aksara pada kursor semasa dengan aksara yang dimasukkan kemudian. R: Gunakan teks yang dimasukkan kemudian untuk menggantikan kursor semasa dan beberapa aksara selepasnya Setiap aksara yang dimasukkan akan menggantikan aksara asal sehingga kekunci < Jika bilangan aksara yang baru dimasukkan melebihi bilangan aksara asal yang sepadan, bahagian tambahan akan ditambahkan. Jika anda menambah nombor sebelum arahan R, seperti 5R, ini bermakna teks yang baru dimasukkan diulang 5 kali, tetapi hanya menggantikan urutan aksara yang diliputi oleh teks input dan aksara yang tidak diliputi dalam baris semasa Kandungan kekal, tetapi kedudukan dialihkan ke kanan. Perlu dinyatakan bahawa apabila menggunakan R untuk menggantikan kandungan teks, teks yang baru dimasukkan boleh menduduki berbilang baris Apabila menggantikan, hanya aksara yang sepadan dalam baris tempat kursor berada akan ditimpa. Dapat dilihat bahawa 6 aksara yang baru dimasukkan (termasuk ruang, tetapi tidak termasuk < Esc >) menggantikan 6 aksara dalam baris asal. 2. Perintah gantian: s dan S s (huruf kecil): Perintah ini bermaksud menggantikan kedudukan kursor semasa dengan yang dimasukkan kemudiannya teks. Jika anda hanya menggantikan aksara di mana kursor berada dengan aksara baharu, arahan s mempunyai fungsi yang serupa dengan perintah r Contohnya, sh dan rh kedua-duanya menukar aksara di mana kursor adalah h. Tetapi terdapat perbezaan antara kedua-dua Perintah r hanya melengkapkan penggantian, manakala arahan s menukar mod kerja daripada mod arahan kepada mod input teks semasa melengkapkan penggantian. Oleh itu, penggunaan umum arahan s ialah: s diikuti oleh teks yang akan diganti, dan akhirnya, ia mesti menamatkan mod input teks dan kembali ke mod arahan. Anda boleh menambah nombor n di hadapan s, yang bermaksud bahawa teks yang dimasukkan selepas s akan digunakan untuk menggantikan aksara n-1 bermula daripada aksara di mana kursor berada dan mengikutinya (jumlah n aksara ). S (kapital): Perintah ini bermaksud menggantikan baris semasa (keseluruhan baris) kursor dengan teks yang baru ditaip (tidak kira lajur mana kursor berada). Jika nombor n, seperti 3, diberikan sebelum S, ini bermakna 3 baris (termasuk baris semasa kursor dan 2 baris di bawahnya) akan digantikan dengan teks yang dimasukkan selepas arahan S. 3. Penggantian perkataan cw Jika kita hanya mahu menggantikan kandungan perkataan tertentu dengan rentetan teks lain, kita boleh menggunakan arahan cw. Apa yang digantikan oleh cw ialah perkataan dalam erti kata yang sempit. Selepas memasukkan arahan ini, Vi akan memadam perkataan pada kursor, dan kemudian pengguna boleh memasukkan sebarang kandungan teks. Selepas melengkapkan input, tekan kekunci, dan Vi akan menggantikan segala-galanya daripada kedudukan kursor asal ke penghujung perkataan yang sepadan dengan kandungan yang dimasukkan. Gabungkan baris teks Vi menyediakan arahan untuk menggabungkan baris tertentu dalam teks. Perintah ini diwakili oleh J (huruf besar), dan fungsinya adalah untuk menggabungkan baris di mana kursor berada dan garis di bawah menjadi satu baris. Jika nombor n, seperti 3, diberikan sebelum arahan J, ini bermakna baris semasa kursor dan 2 baris yang mengikutinya (jumlah 3 baris) digabungkan menjadi satu baris. Menggerakkan baris teks Dalam Vi, kita boleh mengalihkan baris teks dengan mudah dalam julat tertentu ke kiri atau kanan atau dari satu tempat ke tempat lain. Alihkan baris teks kiri dan kanan. Terdapat empat perintah untuk menggerakkan baris teks ke kiri dan kanan: >, <, >> dan <<. (1)> Perintah akan mengalihkan baris teks terhad (baris pertama skrin) ke kanan, biasanya 8 ruang formatnya: > Julat baris teks bergerak dihadkan oleh baris di mana kursor berada dan arahan pergerakan kursor ditaip kemudiannya. (2)< arahan mengalihkan baris teks yang layak ke kiri. Ia digunakan dengan cara yang sama seperti arahan > Sebagai contoh, <6M menggerakkan setiap baris antara baris semasa kursor dan garis tengah skrin memaparkan 8 ruang ke kiri. Perintah (3)>> menggerakkan baris di mana kursor terletak ke kanan sebanyak 8 ruang. Jika nombor n, seperti 4, diberikan sebelum perintah >> ini bermakna baris semasa kursor dan 3 baris di bawahnya (jumlah 4 baris) dialihkan ke kanan sebanyak 8 ruang. (4)<< perintah menggerakkan baris di mana kursor terletak 8 ruang ke kiri. Penggunaannya adalah sama dengan arahan >> Menggerakkan baris teks dalam baris yang berbeza Kita boleh menggunakan langkah berikut untuk mengalihkan baris teks dari satu tempat ke tempat lain. Alihkan kursor ke baris pertama teks yang hendak dialihkan Tekan arahan ndd. Di mana n ialah bilangan baris yang hendak dialihkan. Pada masa ini, Vi akan memadamkan baris teks yang akan dialihkan daripada fail dan memasukkannya ke dalam daftar pemadaman No. 1 Alihkan kursor ke baris destinasi; Tekan ² 1p; Keluarkan baris teks untuk dialihkan daripada daftar padam. Barisan teks yang akan dialihkan kini akan muncul di lokasi destinasi. Walaupun kaedah di atas dapat merealisasikan pergerakan antara baris baris teks, ia jelas terlalu menyusahkan. Vi juga menyediakan satu lagi kaedah pantas, iaitu menggunakan arahan m (Move command) dalam mod baris terakhir. Kaedah penggunaan ialah n m k, yang bermaksud memindahkan baris ke-n di bawah baris ke-k. Sekarang jika anda ingin mengalihkan baris 5 ke baris 4, anda boleh masuk dalam mod baris terakhir: :5 m 3 Sebelum perintah m, juga Anda boleh menentukan julat nombor baris (nombor baris permulaan dan nombor baris penamat), yang bermaksud bahawa baris teks dalam julat yang ditentukan harus dialihkan ke kedudukan yang ditentukan. Contohnya: :2, 5 m 0 bermaksud mengalihkan kandungan baris kedua hingga kelima dalam fail ke pengepala fail (di bawah baris sifar, baris sifar ini adalah tiruan baris). Nombor baris dalam Vi Banyak arahan dalam Vi menggunakan nilai seperti nombor baris dan nombor baris. Jika fail yang hendak diedit besar, amat menyusahkan untuk mengiranya sendiri. Untuk tujuan ini, Vi menyediakan fungsi menambah nombor baris pada teks. Nombor baris ini dipaparkan di sebelah kiri skrin, dan kandungan baris yang sepadan dipaparkan selepas nombor baris. Perintah yang digunakan oleh ialah: Masukkan arahan dalam mod baris terakhir: :set number Perlu diingat bahawa nombor baris yang ditambahkan di sini hanya dipaparkan kepada pengguna , mereka bukan sebahagian daripada kandungan fail. Dalam fail yang lebih besar, pengguna mungkin perlu mengetahui baris mana kursor berada pada masa ini dan di mana ia berada dalam fail Anda boleh menggunakan kombinasi kekunci dalam mod arahan Pada masa ini, Vi akan dipaparkan hujung tetingkap Satu baris memaparkan maklumat yang sepadan. Perintah ini boleh digunakan pada bila-bila masa. Dalam mod baris terakhir, kita boleh memasukkan arahan nu (singkatan perkataan nombor) untuk mendapatkan nombor baris baris semasa di bawah kursor dan kandungan baris. Operasi pergerakan kursor Dalam editor teks skrin penuh, operasi pergerakan kursor sudah pasti merupakan operasi yang paling kerap digunakan. Hanya apabila pengguna mahir menggunakan arahan ini untuk menggerakkan kursor mereka boleh dengan cepat dan tepat mencapai lokasi yang diingini untuk pengeditan. Pergerakan kursor dalam Vi boleh dilakukan dalam mod arahan atau mod input teks, tetapi kaedah operasi adalah berbeza. Dalam mod input teks, anda boleh terus menggunakan kekunci empat arah pada papan kekunci untuk menggerakkan kursor. Dalam mod arahan, terdapat banyak cara untuk menggerakkan kursor. Anda bukan sahaja boleh menggunakan kekunci empat arah untuk menggerakkan kursor, tetapi anda juga boleh menggunakan empat kekunci h, j, k, dan l dan bukannya kekunci empat arah untuk menggerakkan kursor Ini boleh mengelakkan konflik yang disebabkan oleh definisi papan kekunci yang berbeza pada mesin yang berbeza , dan selepas anda mahir menggunakannya, anda boleh menyelesaikan semua operasi tanpa meletakkan tangan anda pada papan kekunci huruf, dengan itu meningkatkan kecekapan kerja. Selain itu, anda juga boleh menggunakan , , dan empat kekunci atau kombinasi kekunci untuk menggerakkan kursor. Dan ketiga-tiga jenis kekunci di atas adalah setara dalam fungsi. Di samping itu, terdapat beberapa arahan untuk menggerakkan kursor. Berikut ialah pengenalan kepada cara ia berfungsi: , ® (kedua-duanya dipanggil kekunci kanan) Fungsi kekunci kanan ialah Move kursor satu kedudukan ke kanan. Jika anda memasukkan nombor n sebelum menekan kekunci kanan, kursor akan menggerakkan n kedudukan ke kanan. Sebagai contoh, 5l bermakna kursor bergerak 5 kedudukan ke kanan. Perlu diingatkan bahawa kursor tidak boleh bergerak melepasi hujung baris semasa. Jika n yang diberikan melebihi bilangan aksara dari kedudukan kursor semasa ke hujung baris, jika anda menggunakan kekunci anak panah kanan, kursor hanya boleh bergerak ke hujung baris jika anda menggunakan kekunci anak panah kanan, iaitu kursor bergerak ke kedudukan yang sesuai pada satu atau lebih baris di bawah. h,, ¬ (kekunci kiri) Laksanakan kekunci kiri sekali dan kursor mengalihkan satu kedudukan ke kiri. Seperti kekunci kanan, anda juga boleh memasukkan nombor n di hadapan kekunci kiri, dan kursor akan menggerakkan n kedudukan ke kiri. Perlu diingat bahawa jika anda menggunakan kekunci anak panah kiri, kursor tidak boleh bergerak ke kiri melebihi permulaan baris jika anda menggunakan kekunci anak panah kiri, kursor bergerak ke kedudukan yang sesuai pada satu atau lebih baris di atas. j,, ¯ (kunci bawah) Laksanakan kekunci bawah sekali untuk menggerakkan kursor ke bawah satu kedudukan (iaitu satu baris), tetapi Lajur tempat kursor terletak kekal tidak berubah. Apabila arahan ini didahului oleh nombor n, kursor bergerak ke bawah n baris. Selain menggunakan kekunci bawah untuk menggerakkan kursor ke bawah, Vi juga boleh menggunakan kekunci dan kekunci " " untuk menggerakkan kursor ke bawah satu baris atau n baris (tidak termasuk baris ini), tetapi pada masa ini kursor akan berada di aksara pertama baris. Contohnya: 3j Kursor bergerak ke bawah 3 baris, dan kedudukan lajur kursor kekal tidak berubah. 3 atau 3 Kursor bergerak ke bawah 3 baris, dan kursor berada di permulaan baris. k,, (kunci atas) Laksanakan kekunci atas sekali untuk menggerakkan kursor ke atas satu kedudukan (iaitu satu baris), tetapi lajur di mana kursor terletak malar. Tambahkan juga nombor n di hadapan arahan ini untuk menggerakkan kursor ke atas n baris. Jika anda mahu kursor berada di permulaan baris selepas bergerak ke atas, anda boleh menggunakan arahan "-". L (bergerak ke permulaan baris) Arahan L menggerakkan kursor ke permulaan baris semasa, iaitu, menggerakkan kursor ke permulaan baris semasa Aksara bukan ruang putih pertama (aksara bukan tab atau bukan ruang). $ (bergerak ke hujung baris) Arahan ini menggerakkan kursor ke hujung baris semasa, berhenti pada watak terakhir. Jika anda menambah nombor n sebelum perintah $, kursor bergerak ke bawah n-1 baris dan sampai ke penghujung baris. [nombor baris] G (bergerak ke baris yang ditentukan) Arahan ini menggerakkan kursor ke baris yang ditentukan oleh nombor baris yang ditentukan kepala. Pergerakan seperti ini dipanggil pergerakan kedudukan mutlak. Kursor telah beralih ke permulaan baris 6. Jika nombor baris ditinggalkan, kursor bergerak ke permulaan baris terakhir fail, iaitu, tidak kira berapa banyak skrin fail, ia melompat ke baris terakhir Cadangan berkaitan: " Tutorial video Linux》
Atas ialah kandungan terperinci Atur dan kongsi penerangan terperinci tentang arahan vi dalam Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!