Sekilas, pemecahan masalah tersebut gampang: buka filenya, delete atau hapus baris pertama, dan simpan kembali. Ternyata tidak semudah itu. Membuka berkas ukuran gigabyte akan memerlukan waktu sangat lama dan mungkin membuat crash komputer.
Solusinya adalah menggunakan program bawaan pada sistem operasi Unix, atau biasa dikenal dengan 'bash script' seperti sed atau tail.
sed -i -e "1d" $FILE
Script, atau command di atas cukup efektif untuk membuang baris pertama (parameter "1d") dari berkas $FILE secara langsung (parameter -i).
Ada alternatif cara menghapus baris pertama yang lebih cepat dari command di atas dengan menggunakan tail.
tail -n +2 "$FILE"
Parameter -n pada tail memberi perintah untuk melihat beberapa baris terakhir suatu berkas. Dengan memasukkan tanda plus, tail akan menampilkan semua baris kecuali baris x-1 yang pertama. Perintah tail -n
tail -n +2 "$FILE" > "$FILE"
Itu akan menghasilkan berkas kosong, alias menghapus semua isi berkas anda. Alasannya adalah tanda > akan diksekusi oleh komputer sebelum perintah tail. Shell akan menghapus $FILE sebelum menjalankan tail.
Jika anda ingin menghapus baris pertama, anda harus menggunakan perintah berikut ini:
tail -n +2 "$FILE" > "$FILE.tmp" && mv "$FILE.tmp" "$FILE"
Perintah && akan menjamin bahwa berkas tidak diganti jika ada yang tidak beres saat menjalankan perintah sebelumnya.