Menggunakan seduntuk memodifikasi file di tempat:
sed -i '/^\(report\|-t\(h\|o\)\)/!d' your_file
Ini menginstruksikan seduntuk menghapus semua baris yang tidak cocok dengan pola. Pola itu sendiri adalah ^(mulai dari garis), diikuti oleh salah satu reportatau -tdiikuti oleh hatau o.
Anda harus mencatat bahwa ini bukan modifikasi aktual di tempat: sedmembuat salinan cadangan sementara dan menimpa file asli dengannya.
Jika Anda ingin sedmenyimpan salinan cadangan dari file asli (yang mungkin merupakan ide bagus jika file tersebut berisi data penting), berikan -isaklar ekstensi untuk membuat file cadangan:
sed -i'.bak' -e '/^\(report\|-t\(h\|o\)\)/!d' your_file
akan memodifikasi your_filedan membuat cadangan dari yang disebut asli your_file.bak.
Catatan tambahan
Tolong jangan salah mengartikan niat saya atau menyinggung ini, tapi saya perhatikan bahwa Anda memiliki banyak pertanyaan terkait pemrosesan teks / regex yang serupa. Saya menyarankan Anda untuk mulai belajar sed, awkdan grepAnda sendiri untuk membantu mempercepat produktivitas Anda. Sekali lagi, jangan salah paham, saya terlalu senang untuk membantu (seperti kebanyakan orang di sekitar sini); hanya saja saya pikir Anda dapat mengambil manfaat besar dari mengambil alat ini untuk penggunaan sehari-hari Anda.
Hanya untuk membuktikan betapa bermanfaatnya orang-orang di sekitar sini, pertimbangkan saran @ slm dalam komentar di bawah ini dan jangan ragu untuk mampir ke ruang obrolan ini kapan saja untuk pertanyaan.