Jadi pertanyaan sebenarnya adalah - apakah ada yang punya ide bagaimana menghapus M-BM-
karakter khusus tanpa risiko kehilangan karakter lain?
Saya memiliki serangkaian teks:
" . . ."
itu adalah
space dot space dot space dot
Saya mencoba mengganti semua kemunculan string ini dalam file teks
"..."
itu adalah
dot dot dot
Saya coba lakukan dengan sed:
sed -r 's:\s\.\s\.\s\.:...:g' -i sed-dots
Sayangnya, itu tidak mengubah file input sedikit pun. File: https://www.dropbox.com/s/46zmiruy3ln85a1/sed-dots
Ketika saya mencoba untuk mengganti string yang sama di editor teks (saya menggunakan geany) itu ditemukan dan diganti dengan benar.
Satu-satunya alasan yang dapat saya pikirkan adalah bahwa beberapa (atau semua) ruang itu bukan benar-benar ruang, tetapi beberapa karakter khusus.
Adakah yang tahu cara menemukan dan mengganti string itu dengan sed (atau alat baris perintah lainnya)? Silakan uji ide Anda pada file saya, karena masalahnya tidak sejelas kelihatannya - ini sebabnya saya bertanya tentangnya.
Setelah menggunakan cat -A
myfile, sepertinya masalah bukan spasi, melainkan M-BM-
karakter khusus. Menggunakan simbol apa pun yang .
disarankan untuk pencarian bukanlah ide yang baik karena ada risiko beberapa karakter lain akan dihapus.
echo
alih-alih melakukan catting file, setidaknya ketika Anda menyimpan file, Anda tahu shellnya tidak menafsirkan apa-apa, dan juga tidak ada gema.