sed

Sed Hapus Spasi

Sed Hapus Spasi
Menghapus spasi putih dalam dokumen adalah langkah pemformatan penting yang diperlukan untuk meningkatkan tata letak keseluruhan teks dan untuk memastikan data bersih dan rapi. Ini membantu untuk menyimpan hanya data yang diperlukan dan menyingkirkan spasi awal dan akhir yang tidak perlu. Berikut adalah beberapa skenario di mana Anda mungkin perlu menghapus spasi putih:

Jika kita berbicara tentang spasi putih terkemuka, mereka relatif mudah dikenali karena berada di awal teks. Namun, tidak mudah untuk menemukan spasi putih yang tertinggal. Sama halnya dengan spasi ganda yang terkadang juga sulit dikenali. Semuanya menjadi lebih menantang ketika Anda perlu menghapus semua spasi putih awal dan akhir dari dokumen yang berisi ribuan baris.

Untuk menghapus spasi putih dari dokumen Anda, Anda dapat menggunakan berbagai alat seperti awk, sed, cut, dan tr. Di beberapa artikel lain, kami telah membahas penggunaan awk dalam menghapus spasi putih. Pada artikel ini, kita akan membahas penggunaan sed untuk menghapus spasi putih dari data.

Anda akan belajar cara menggunakan sed untuk:

Kami akan menjalankan perintah di Ubuntu 20.04 Focal Fossa. Anda juga dapat menjalankan perintah yang sama pada distribusi Linux lainnya. Kami akan menggunakan aplikasi Terminal Ubuntu default untuk menjalankan perintah. Untuk membuka Terminal, gunakan pintasan keyboard Ctrl+Alt+T.

Apa itu Sedo

Sed (singkatan dari stream editor) adalah utilitas yang sangat kuat dan berguna di Linux yang memungkinkan kita untuk melakukan manipulasi teks dasar pada input stream. Ini bukan editor teks, tetapi membantu untuk memanipulasi dan memfilter teks. Ini menerima aliran input dan mengeditnya sesuai dengan instruksi pengguna dan kemudian mencetak teks yang diubah ke layar.

Dengan sed, Anda dapat:

Menggunakan Sed untuk Menghapus Spasi

Kami akan menggunakan sintaks berikut untuk menghapus spasi putih dari teks:

s/ REGEXP /penggantian/bendera

Dimana

Ekspresi reguler

Beberapa ekspresi reguler yang akan kita gunakan di sini adalah:

Untuk tujuan demonstrasi, kami akan menggunakan file contoh berikut bernama "testfile".

Lihat Semua Spasi Putih dalam File

Untuk menemukan semua spasi putih di file Anda, pipa output dari perintah cat ke perintah tr seperti ini:

$ file tes kucing | tr " " "*" | tr "\t" "&"

Perintah ini menggantikan semua spasi putih di file Anda dengan simbol (*), yang membuatnya lebih mudah untuk menemukan semua spasi putih apakah spasi putih tunggal, ganda, terdepan, atau tertinggal.

Pada tangkapan layar berikut, Anda dapat melihat spasi diganti dengan simbol *.

Hapus Semua Spasi Putih (Termasuk Spasi dan Tab)

Dalam beberapa kasus, Anda perlu menghapus semua spasi putih dari data, mis.e. leading, trailing, dan spasi putih di antara teks. Perintah berikut akan menghapus semua spasi putih dari "testfile".

$ file tes kucing | sed -r 's/\s+//g'

catatan: Sed tidak mengubah file Anda kecuali Anda menyimpan output ke file.

Keluaran:

Setelah menjalankan perintah di atas, output berikut muncul, yang menunjukkan bahwa semua spasi telah dihapus dari teks.

Anda juga dapat menggunakan perintah berikut untuk memverifikasi bahwa semua spasi telah dihapus.

$ file tes kucing | sed -r 's/\s+//g' | tr " " "*" | tr "\t" "&"

Dari output, Anda dapat melihat bahwa tidak ada simbol (*) yang berarti semua spasi telah dihapus.

Untuk menghapus semua spasi tetapi hanya dari baris tertentu (misalkan baris nomor 2), Anda dapat menggunakan perintah berikut:

$ file tes kucing | sed -r '2s/\s+//g'

Hapus Semua Spasi Putih Utama (Termasuk Spasi dan Tab)

Untuk menghapus semua spasi putih dari awal setiap baris (spasi putih terdepan), gunakan perintah berikut:

$ file tes kucing | sed 's/^[ \t]*//'

Keluaran:

Output berikut muncul setelah menjalankan perintah di atas, yang menunjukkan semua spasi putih terkemuka telah dihapus dari teks.

Anda juga dapat menggunakan perintah berikut untuk memverifikasi bahwa semua spasi putih terkemuka telah dihapus:

$ file tes kucing | sed 's/^[ \t]*//' | tr " " "*" | tr "\t" "&"

Dari output, Anda dapat melihat tidak ada simbol (*) di awal baris yang memverifikasi bahwa semua spasi putih terkemuka telah dihapus.

Untuk menghapus spasi putih di depan hanya dari baris tertentu (misalkan baris nomor 2), Anda dapat menggunakan perintah berikut:

$ file tes kucing | sed '2s/^[ \t]*//'

Hapus Semua Spasi Putih (Termasuk Spasi dan Tab)

Untuk menghapus semua spasi putih dari akhir setiap baris (mengikuti spasi), gunakan perintah berikut:

$ file tes kucing | sed 's/[ \t]*$//'

Keluaran:

Output berikut muncul setelah menjalankan perintah di atas, yang menunjukkan semua spasi putih telah dihapus dari teks.

Anda juga dapat menggunakan perintah berikut untuk memverifikasi bahwa semua spasi tambahan telah dihapus.

$ file tes kucing | sed 's/[ \t]*$//' | tr " " "*" | tr "\t" "&"

Dari output, Anda dapat melihat tidak ada simbol (*) di akhir baris yang memverifikasi bahwa semua spasi tambahan telah dihapus.

Untuk menghapus spasi tambahan hanya dari baris tertentu (misalkan baris nomor 2), Anda dapat menggunakan perintah berikut:

$ file tes kucing | sed '2s/[ \t]*$//'

Hapus spasi Putih Depan dan Belakang

Untuk menghapus semua spasi putih dari awal dan akhir setiap baris (i.e. spasi putih awal dan akhir), gunakan perintah berikut:

$ file tes kucing | sed 's/^[ \t]*//;s/[ \t]*$//'

Keluaran:

Output berikut muncul setelah menjalankan perintah di atas, yang menunjukkan bahwa spasi putih awal dan akhir telah dihapus dari teks.

Anda juga dapat menggunakan perintah berikut untuk memverifikasi bahwa spasi putih awal dan akhir telah dihapus.

$ file tes kucing | sed 's/^[ \t]*//;s/[ \t]*$//' | tr " " "*" | tr "\t" "&"

Dari output, Anda dapat melihat tidak ada simbol (*) di awal atau akhir baris yang memverifikasi bahwa semua spasi putih awal dan akhir dihapus.

Untuk menghapus spasi putih awal dan akhir hanya dari baris tertentu (misalkan baris nomor 2), Anda dapat menggunakan perintah berikut:

$ file tes kucing | sed '2s/^[ \t]*//;2s/[ \t]*$//'

Ganti Beberapa Spasi Putih dengan Spasi Tunggal

Dalam beberapa kasus, ada beberapa spasi putih di tempat yang sama dalam file, tetapi Anda hanya perlu spasi tunggal. Anda dapat melakukannya dengan mengganti beberapa spasi tersebut dengan satu spasi menggunakan sed.

Perintah berikut akan mengganti semua spasi putih dengan spasi putih tunggal dari setiap baris di "testfile".

$ file tes kucing | sed 's/[ ]\+/ /g'

Keluaran:

Output berikut muncul setelah menjalankan perintah di atas, yang menunjukkan beberapa spasi telah diganti dengan spasi tunggal.

Anda juga dapat menggunakan perintah berikut untuk memverifikasi apakah beberapa spasi diganti dengan spasi putih tunggal:

$ file tes kucing | sed 's/[ ]\+/ /g' | tr " " "*" | tr "\t" "&"

Dari output, Anda dapat melihat simbol (*) tunggal di setiap tempat yang memverifikasi bahwa semua kemunculan beberapa spasi diganti dengan spasi putih tunggal.

Jadi, ini semua tentang menghapus spasi putih dari data Anda menggunakan sed. Dalam artikel ini, Anda telah mempelajari cara menggunakan sed untuk menghapus semua spasi putih dari data Anda, menghapus hanya spasi putih awal atau akhir, dan menghapus spasi putih awal dan akhir. Anda juga telah belajar cara mengganti multi spasi dengan satu spasi. Sekarang akan mudah bagi Anda untuk menghapus spasi putih dari file yang berisi ratusan atau ribuan baris.

Cara Mengubah Pengaturan Mouse dan Touchpad Menggunakan Xinput di Linux
Sebagian besar distribusi Linux dikirimkan dengan pustaka "libinput" secara default untuk menangani kejadian input pada sistem. Ini dapat memproses ke...
Petakan ulang tombol mouse Anda secara berbeda untuk perangkat lunak yang berbeda dengan Kontrol Tombol X-Mouse
Mungkin Anda membutuhkan alat yang dapat membuat kontrol mouse Anda berubah dengan setiap aplikasi yang Anda gunakan. Jika demikian, Anda dapat mencob...
Ulasan Mouse Nirkabel Microsoft Sculpt Touch
Saya baru-baru ini membaca tentang Microsoft Sculpt Touch mouse nirkabel dan memutuskan untuk membelinya. Setelah menggunakannya untuk sementara waktu...