Ya ada berbagai cara untuk melakukan ini. Anda dapat menggunakan awk,, perlatau bashmelakukan aktivitas ini juga. Meskipun secara umum sedmungkin merupakan alat yang paling tepat untuk melakukan tugas-tugas jenis ini.
Contohnya
Katakanlah saya punya data sampel ini, dalam file data.txt:
foo bar 12,300.50
foo bar 2,300.50
abc xyz 1,22,300.50
awk
$ awk '{gsub("foo", "foofoofoo", $0); print}' data.txt
foofoofoo bar 12,300.50
foofoofoo bar 2,300.50
abc xyz 1,22,300.50
Perl
$ perl -pe "s/foo/foofoofoo/g" data.txt
foofoofoo bar 12,300.50
foofoofoo bar 2,300.50
abc xyz 1,22,300.50
Pengeditan sebaris
Contoh di atas dapat langsung memodifikasi file juga. Contoh Perl adalah sepele. Cukup tambahkan -isakelar.
$ perl -pie "s/foo/foofoofoo/g" data.txt
Untuk awkitu sedikit kurang langsung tetapi sama efektifnya:
$ { rm data.txt && awk '{gsub("foo", "foofoofoo", $0); print}' > data.txt; } < data.txt
Metode ini membuat sub-shell dengan kurung kurawal '{...} `di mana file diarahkan ke dalamnya melalui ini:
$ { ... } < data.txt
Setelah file diarahkan ke sub-shell, itu dihapus dan kemudian awkdijalankan terhadap konten file yang dibaca ke dalam sub-shell STDIN. Konten ini kemudian diproses oleh awkdan ditulis kembali ke nama file yang sama yang baru saja kita hapus, menggantikannya secara efektif.
$var=~s/a/b/g,gsub(/a/,"b",var),var.gsub(/a/,'b'),var.replace(/a/g,'b'),preg_replace("/a/","b",$var),regsub -all a b $var. Selain itu, banyak alat dan bahasa juga dapat melakukan penggantian string teks biasa. Jadi pertanyaan Anda entah bagaimana luas.