GNU/Linux >> Belajar Linux >  >> Linux

Hapus Baris Header Ekstra Dari File, Kecuali Baris Pertama?

Saya memiliki file yang terlihat seperti contoh mainan ini. File saya yang sebenarnya memiliki 4 juta baris, sekitar 10 di antaranya harus saya hapus.

ID  Data1  Data2
1    100    100
2    100    200
3    200    100
ID  Data1  Data2
4    100    100
ID  Data1  Data2
5    200    200

Saya ingin menghapus baris yang terlihat seperti header, kecuali baris pertama.

Berkas akhir:

ID  Data1  Data2
1    100    100
2    100    200
3    200    100
4    100    100
5    200    200

Bagaimana saya bisa melakukan ini?

Jawaban yang Diterima:

header=$(head -n 1 input)
(printf "%sn" "$header";
 grep -vFxe "$header" input
) > output
  1. ambil baris header dari file input ke dalam variabel
  2. cetak header
  3. proses file dengan grep untuk menghilangkan baris yang cocok dengan header
  4. tangkap output dari dua langkah di atas ke dalam file output

Linux
  1. Menggunakan Google Drive dari Baris Perintah Linux

  2. Bagaimana Melewati Garis File?

  3. Menggabungkan Garis Berdasarkan Karakter Pertama Dari Baris Berikutnya?

  1. Bash Script Untuk Menghapus File Terlama Dari Folder A?

  2. Cetak baris terakhir file, dari CLI

  3. Hapus baris ganjil atau genap dari file teks

  1. Hapus N baris pertama dari file log aktif

  2. Bagaimana cara mengekstrak teks dari file besar, mulai dari kemunculan pertama string?

  3. Skrip Bash untuk menghapus file terlama dari folder