Saya perlu mengganti semua spasi putih di dalam teks saya dengan koma. Saat ini saya menggunakan baris ini tetapi tidak berfungsi: Saya mendapatkan sebagai output file teks yang persis sama dengan yang asli:
sed 's/[:blank:]+/,/g' orig.txt > modified.txt
Terima kasih
text-processing
aneuryzm
sumber
sumber
Jawaban:
Dengan
sed
:Atau dengan
perl
:Sunting: Untuk mengecualikan baris baru di perl, Anda dapat menggunakan negatif ganda
's/[^\S\n]+/,/g'
atau mencocokkan hanya dengan karakter spasi putih pilihan Anda's/[ \t\r\f]+/,/g'
.sumber
+
operator di sed, saya baru saja memperbarui jawaban saya. Newlines adalah whitepsace dalam perl, jadi Anda harus melakukan kelas whitepsace Anda secara manual jika Anda tidak ingin memasukkannya. Saya menambahkan dua solusi untuk itu juga.Menggunakan
tr
:Ini akan menggantikan spasi putih horizontal dengan koma. Setiap spasi putih yang berulang hanya akan diganti dengan satu koma.
sumber
Di sini nama file adalah Server .. Ini berisi konten di bawah ini ..
Jika kita menggunakan perintah di atas kita bisa mendapatkan output di bawah ini ..
sumber