Dalam kebanyakan kasus, saat Anda bekerja dengan file teks, kemungkinan ada beberapa ruang kosong. Spasi kosong ini dapat berkisar dari beberapa karakter hingga sejumlah baris yang kosong atau tidak memiliki informasi. Menyimpan file seperti itu dengan ruang yang tidak perlu bisa memakan waktu dan merepotkan. Mungkin ada beberapa alasan untuk menyimpan file-file ini, tetapi cara terbaik untuk menanganinya adalah dengan menghapus baris-baris yang kosong. Artikel ini mengeksplorasi perintah Unix sed dan penggunaannya dalam menghapus baris kosong di file.
AdvertisementWhat Is Sed?
Sed adalah singkatan dari stream editor. Ini adalah editor baris perintah non-interaktif. Ini terutama digunakan untuk mengedit dan memfilter file. Sed paling sering digunakan dalam pembuatan skrip, yang digunakan untuk mengedit satu file atau beberapa file secara berurutan. Sed dapat digunakan untuk melakukan urutan tindakan pengeditan pada satu file atau sekelompok file. Ini dapat digunakan untuk menghapus baris dan kata dalam file, mengganti kata, dan bahkan menambahkan teks di lokasi tertentu dalam file.
Dalam tutorial ini, Anda akan belajar tentang perintah sed Linux untuk menghapus baris dari file berdasarkan argumen. Ingatlah bahwa perintah default tidak membuat perubahan apa pun pada file asli. Jika Anda ingin menghapus file dalam file yang sama, gunakan opsi `-i` dengan commands.
1. Hapus baris pertama dari file
Anda dapat menggunakan opsi `1d` untuk menghapus baris pertama dari file. Misalnya, Anda memiliki file CSV dan ingin menghapus baris judul. Gunakan perintah berikut untuk menghapus baris pertama dengan sed.
sed `1d` file_name
Here `1` mewakili baris pertama dan `d` digunakan untuk menghapus. Jadi menggabungkan `1d` menghapus baris pertama dari file. Lihat contoh di bawah ini:
![Contoh perintah Sed untuk menghapus baris pertama dari file](https://tecadmin.net/wp-content/uploads/2023/01/sed-command-to-delete-first-line-from-file.png)
Anda dapat melihat bahwa perintah `sed` menghapus baris pertama dari output.
2. Hapus baris terakhir dari file
Gunakan parameter hak gadai perintah `$d` dengan sed untuk menghapus baris terakhir atau baris footer dari denda. Perintah berikut akan menghapus baris terakhir dari file_name.csv file.
sed `$d` file_name
Dalam perintah di atas `$` mewakili baris terakhir dari file dan `d` untuk menghapus line.
![Contoh perintah Sed untuk menghapus baris terakhir dari file](https://tecadmin.net/wp-content/uploads/2023/01/sed-command-to-delete-last-line-from-file.png)
Anda dapat menentukan nomor baris diikuti dengan `d` untuk menghapus baris tertentu. Misalnya untuk menghapus file ke-5 dari file, jalankan:
sed `5d` file_name.csv4. Hapus rentang garis
Sed juga memungkinkan untuk menghapus rentang garis dari file. Kita dapat menentukan garis awal dan nomor garis akhir dengan perintah terpisah. Mari kita lihat contoh di bawah ini:
sed `2,5d` file_name
Perintah di atas akan menghapus nomor baris dari 2 sampai 5 dari file yang diberikan.
5. Hapus baris selain baris pertama
Gunakan operator negasi (!) dengan opsi d dalam perintah sed. Perintah sed berikut menghapus semua baris kecuali header line.
sed `1!d` file_name6. Hapus baris selain baris terakhir
Gunakan operator negasi (!) dengan opsi d dalam perintah sed. Perintah sed berikut menghapus semua baris kecuali header line.
sed `$!d` file_name7. Hapus baris selain rentang yang ditentukan
Gunakan operator negasi (!) dengan opsi d dalam perintah sed. Perintah sed berikut menghapus semua baris kecuali header line.
sed `2,5!d` file_name8. Hapus baris pertama dan terakhir
sed `1d;$d` file_name9. Hapus baris kosong atau baris kosong
Perintah sed dapat digunakan untuk menghapus baris kosong dalam file teks. Untuk melakukannya, Anda dapat menggunakan perintah berikut:
sed `/^$/d` file_name
Perintah di atas menghapus semua baris kosong dari file yang ditentukan. Setiap baris berisi satu spasi tidak dianggap sebagai baris tunggal.
10. Hapus baris yang dimulai dengan karakter
sed `/^t/d` numbers.csv11 yang ditentukan. Hapus baris yang diakhiri dengan character
sed `/t$/d` numbers.csv12. Hapus baris yang berisi pattern
sed `/pattern/d` numbers.csvConclusion
Selalu ada kebutuhan untuk membersihkan file teks sebelum diproses lebih lanjut, karena mungkin terdapat karakter yang tidak diinginkan, seperti tab, baris baru, spasi, dll. Sed menawarkan sejumlah cara untuk menghapus baris, kata, atau bahkan karakter dari file. Sederhananya operasi yang diinginkan di command prompt, dan Anda selesai!
Referensi tecadmin.com