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!