Cara Cari dan Gantikan Teks dalam Vim di Linux

vim ialah salah satu penyunting fail paling popular di Linux. Sebahagian daripada populariti adalah disebabkan oleh mod baris arahan vim, yang membolehkan pengguna, terutamanya pembangun perisian dan pengguna lanjutan untuk mengoptimumkan masa untuk operasi pengubahsuaian fail.

Dalam artikel ini, kita akan melihat cara mencari dan menggantikan teks dalam vim mod baris arahan.

Mula-mula, mari buka fail teks dalam vim:

vim test.txt

Vim beroperasi dalam pelbagai mod. Dua mod paling penting ialah mod arahan yang dinyatakan di atas, dan kedua ialah mod Sisip, digunakan untuk mengubah suai kandungan fail.

Secara lalai, apabila fail dibuka, vim beroperasi dalam mod arahan. Anda boleh tekan i untuk pergi ke mod Sisip.

Dalam mod Perintah, anda boleh mula menaip arahan vim secara langsung; ia muncul di bahagian bawah terminal. Bahagian bawah ini bertindak sebagai gesaan arahan bersepadu dalam vim.

Untuk mencari rentetan, taip garis miring ke belakang / diikuti dengan rentetan yang hendak dicari.

Contohnya: /dog

Seperti yang dilihat di atas, ia membawa kursor ke kejadian seterusnya rentetan dari kedudukan di mana kursor diletakkan. Kursor diletakkan pada rentetan coklat seperti yang ditunjukkan dalam imej sebelum ini. Untuk mencari kejadian seterusnya, tekan n. Selepas kejadian terakhir, ia kembali kepada yang pertama, memberikan mesej "carian tekan BAWAH, diteruskan di ATAS".

Untuk mencari rentetan dengan watak istimewa, atau contohnya aksara seperti tambah (+), atau ruang, mendahului aksara dengan garis miring ke hadapan:

Contohnya: /C\+

Untuk mencari dan menggantikan kejadian rentetan pertama pada baris, kami meletakkan kursor pada baris itu, dan menggunakan arahan berikut:

Contohnya: :s/dog/tiger

Seperti yang anda lihat dalam tangkapan skrin di atas, baris ketiga di mana kursor diletakkan, perkataan anjing ha telah digantikan dengan harimau seperti yang diarahkan dalam arahan.

Untuk mencari dan menggantikan semua kejadian rentetan pada baris, gunakan /g pada penghujungnya.

Contohnya: :s/cat/dog/g

Untuk mencari dan menggantikan semua kejadian secara global, kami guna %s bukan sahaja s:

Contohnya: :%s/anjing/tikus

Jika rentetan terdiri daripada aksara khas seperti ruang, ia boleh didahului dengan garis miring ke hadapan, dengan cara yang sama seperti yang ditunjukkan sebelum ini.

? Cheers!