Bagaimana cara mengganti string file dengan regexp di Linux

0

Saya mencoba mengganti angka-angka tertentu dan menggunakan perintah ini:

sed -e 's/[0-9]\{12\}/ /g' file.log

tetapi tidak ada yang terjadi. Seperti yang dapat Anda lihat, ekspresi ini harus mengganti semua kejadian numerik dengan ukuran 12 digit, secara global dan menggantinya dengan spasi. Saya menemukan bahwa simbol {,} harus dilepaskan - aneh. Itu tidak bekerja. Tolong bantu.

Arthur Kushman
sumber
Bekerja untukku. Bisakah Anda menunjukkan input sampel?
choroba
Ini bekerja dengan baik untuk saya. Versi Linux apa yang Anda gunakan?
mvp
ketika saya mengetik echo 1224512561234 | sed -e 's/[0-9]\{12\}/ /g'saya mendapat respons `4`. Menurut saya itu benar.
3
Seperti yang telah ditunjukkan oleh orang lain, sepertinya itu berfungsi dengan baik .. Itu tidak akan mengedit konten file itu sendiri. Jika itu yang Anda coba lakukan, Anda dapat mencoba -iopsi untuk melihat sed man sed( unixhelp.ed.ac.uk/CGI/man-cgi?sed )