Saya mencari alat OS X yang memungkinkan saya untuk mencari dan mengganti string pencarian di banyak file. Persyaratannya adalah sebagai berikut:
- Cari dan Ganti
- Cari dengan ekspresi reguler
- Cari di banyak file
- Cari di seluruh struktur direktori bersarang
- Ganti ekspresi dapat menggunakan nilai dari pencarian (Ekspresi Reguler)
- Alat ini memiliki antarmuka pengguna yang mudah digunakan
- Lebih disukai gratis
Saya tahu bahwa beberapa editor teks seperti BBEdit memiliki fungsi ini, tetapi saya lebih suka alat ringan yang tidak mengharuskan saya untuk membuka file untuk diedit terlebih dahulu.
Jika tidak ada alat yang sesuai dengan persyaratan ini, saya juga akan mempertimbangkan alternatif baris perintah. Saya tahu itu perl
dan sed
mendukung sesuatu seperti ini - solusi yang dapat saya definisikan sebagai alias Bash atau fungsi akan diterima dalam kasus ini.
Anda tidak harus membuka file dengan BBEdit. Anda cukup arahkan ke folder. Ini adalah alat yang sangat kuat, yang sering saya gunakan dengan banyak file HTML.
sumber
Selain solusi lain menggunakan editor teks, saya telah menemukan FAR - Find and Replace , alat mencari dan mengganti multi-platform. Ini bukan yang tercantik, tetapi sepertinya itu melakukan apa yang saya cari.
http://findandreplace.sourceforge.net/
sumber
Saya sering menggunakan skrip Ruby seperti ini:
Atau Anda dapat menggunakan
gets(nil)
dengan-i
:Jika Anda menginstal Bash 4 dan mengaktifkan globstar, Anda dapat menggunakan
**
shell juga:sumber
Ini persis
sed
ditulis dan cocok dengan semua persyaratan Anda, kecuali kurva belajarnya agak curam.Untuk kurva belajar lebih lembut, mencoba TextWrangler dari BareBones. Ia menggunakan mesin teks BBEdit dan, saya percaya, memiliki fungsi pencarian & penggantian saudara lelaki yang lengkap
sumber
sed
. Bisakah Anda memberikan contoh cara menggunakansed
untuk mengganti teks dalam serangkaian file, seperti pada jawaban (saat ini) di atasruby
?Lihatlah Penelusuran dan Ganti Aplikasi saya . Anda dapat menggunakannya pada banyak file atau direktori, menyimpan string pencarian / ganti Anda dan Anda dapat menggunakan ekspresi reguler.
sumber