sed

Cara Mengganti Baris Baru dengan Koma Menggunakan Perintah 'sed'

Cara Mengganti Baris Baru dengan Koma Menggunakan Perintah 'sed'

Karakter atau string apa pun dapat diganti dengan menggunakan perintah 'sed'. Terkadang, kita perlu mengganti karakter baris baru (\n) dalam file dengan koma. Dalam artikel ini, kami menggunakan perintah 'sed' untuk mengganti \n dengan koma.

Menggunakan 'sed' untuk mengganti \n dengan koma

Banyak masalah dapat terjadi saat mengganti \n dengan koma. Secara default, setiap baris diakhiri dengan \n saat membuat file. Perintah 'sed' dapat dengan mudah dipecah pada \n dan mengganti baris baru dengan karakter apa pun. Pembatas lain dapat digunakan sebagai pengganti \n, tetapi hanya jika GNU sed digunakan. Ketika \n hilang di baris terakhir file, GNU sed dapat menghindari pencetakan \n. Selanjutnya, \n biasanya ditambahkan ke setiap keluaran 'sed' yang berurutan.

Buat File

Dalam artikel ini, kami akan menunjukkan cara menggunakan  perintah 'sed' untuk mengganti \n dengan koma. Untuk mengikuti tutorial ini, buat file teks bernama klien.txt dengan informasi klien tabel berikut following.

Indo Nama Surel Telepon
c01 Md. Rakib [dilindungi email] 01856233238
c02 Meher Afroze [dilindungi email] 01733536342
c03 Fakrul Ahsan [dilindungi email] 01934737248
c04 Helal Uddin [dilindungi email] 01534895898
c05 Nusrat Jahan [dilindungi email] 01866345254

Contoh 1: Ganti \n dengan koma menggunakan -z

Opsi -z digunakan untuk mengonversi \n ke karakter nol (\0). Konten file diperlakukan sebagai satu baris jika tidak mengandung karakter nol. Perintah 'sed' akan mengubah baris baru menjadi karakter nol dan mengganti setiap \n dengan koma dengan menggunakan pola pencarian dan penggantian pertama. Di sini, 'g' digunakan untuk mencari \n . secara global. Dengan pola pencarian dan penggantian kedua, koma terakhir akan diganti dengan \n.

$Klien kucing.txt
$ sed -z 's/\n/,/g;s/,$/\n/' Klien.txt

Output berikut akan dihasilkan setelah menjalankan perintah:.

Contoh 2: Ganti \n dengan koma menggunakan a, b, $! dan N

Perintah 'sed' dapat digunakan untuk mengganti \n dengan koma dengan menggunakan a, b, N, dan $!. Sini, Sebuah digunakan untuk menambahkan tugas, b digunakan untuk mencabangkan konten, tidak digunakan untuk pergi ke baris berikutnya, dan $! digunakan untuk mencegah tugas penggantian diterapkan ke baris terakhir. Perintah akan menggantikan masing-masing \n dengan koma kecuali baris terakhir.

$Klien kucing.txt
$ sed ':a;N;$!ba;s/\n/,/g' Klien.txt

Output berikut akan dihasilkan setelah menjalankan perintah:.

Contoh 3:  Ganti \n dengan koma menggunakan H, h, d, x dan y

Jika Anda ingin mengganti \n) dengan koma dalam file kecil, maka perintah 'sed' berikut dapat digunakan. Sini, H digunakan untuk menambahkan baris terakhir ke teks penahan, 1h digunakan untuk menyalin setiap baris file ke teks penahan dari baris pertama, $!d digunakan untuk menghapus semua baris kecuali baris terakhir, x digunakan untuk menukar teks dan ruang pola, dan kamu digunakan untuk menggantikan setiap \n dalam memegang teks dengan koma.

$Klien kucing.txt
$ sed 'H;1j;$!d;x;y/\n/,/' Klien.txt

Output berikut akan dihasilkan setelah menjalankan perintah:.

Contoh 4: Ganti \n dengan koma menggunakan -n ,H, h, g dan p

Perintah 'sed' dapat digunakan untuk menggantikan \n dengan koma dengan -tidak opsi, yang mencegah pencetakan otomatis. Seperti pada contoh sebelumnya, H digunakan di sini untuk menambahkan baris terakhir ke teks induk, 1 jam digunakan untuk menyalin setiap baris file ke teks induk, $ mengacu pada baris terakhir file, g digunakan untuk menyalin dari teks induk, dan p digunakan untuk mencetak.

$Klien kucing.txt
$ sed -n  "H;1h;\$g;s/\n/,/g;p" Klien.txt

Output berikut akan dihasilkan setelah menjalankan perintah di atas:.

Contoh 5: Ganti \n dengan koma menggunakan H, x, p

H, x, dan p telah dijelaskan pada contoh sebelumnya. Ekspresi pencarian dan penggantian pertama akan menggantikan masing-masing \n dengan koma, dan ekspresi pencarian dan penggantian kedua akan menggantikan koma di awal baris dengan spasi.

$Klien kucing.txt
$ sed -n  'H;$x;s/\n/,/g;s/^,//;p;' Klien.txt

Output berikut akan dihasilkan setelah menjalankan perintah di atas:.

Contoh 6: Ganti \n dengan koma menggunakan N dan 'cat'

Perintah 'cat' digunakan di sini untuk mengirim konten file ke perintah 'sed', dan tidak digunakan untuk pindah ke baris berikutnya.

$Klien kucing.txt
$Klien kucing.txt | sed 'N;s/\n/,/'

Output berikut akan dihasilkan setelah menjalankan perintah di atas:.

Kesimpulan

Mungkin perlu mengganti \n dengan koma untuk mentransfer data dari satu format file ke format lainnya. Jenis penggantian ini juga dapat dilakukan dengan menggunakan perintah Linux lainnya. Banyak opsi perintah, seperti H, N, h, dan x, dapat digunakan dengan perintah 'sed' untuk menyelesaikan tugas ini. Tutorial ini membahas beberapa cara menggunakan perintah 'sed' untuk mengganti \n dengan koma.

Game Baris Perintah Terbaik untuk Linux
Baris perintah bukan hanya sekutu terbesar Anda saat menggunakan Linux-ini juga dapat menjadi sumber hiburan karena Anda dapat menggunakannya untuk me...
Aplikasi Pemetaan Gamepad Terbaik untuk Linux
Jika Anda suka bermain game di Linux dengan gamepad alih-alih sistem input keyboard dan mouse biasa, ada beberapa aplikasi yang berguna untuk Anda. Ba...
Alat Berguna untuk Gamer Linux
Jika Anda suka bermain game di Linux, kemungkinan besar Anda telah menggunakan aplikasi dan utilitas seperti Wine, Lutris, dan OBS Studio untuk mening...