Saya punya dokumen panjang perintah. Menggunakan Notepad ++ atau regex, saya ingin menghapus semua baris yang berisi "bantuan" termasuk keyboard_help, dll.
Bagaimana ini bisa dilakukan?
Ini juga dimungkinkan dengan Notepad ++:
Periksa baris Bookmark (jika tidak ada pembaruan Tandai tab ke versi saat ini).
Masukkan istilah pencarian Anda dan klik Tandai Semua
Sekarang, masuk ke menu Cari → Bookmark → Hapus baris Bookmarked
Selesai
cd
ke jalan, dan ketik perintah yang kompleks (khawatir tentang sintaks dan mengacaukan secara permanen kemudian menyadari tidak ada cadangan). [ Jangan salah paham, saya menggunakan perintah konsol sepanjang waktu untuk hal-hal lain, tetapi untuk sesuatu seperti ini, itu hanya kerja keras.]BOOKMARK LINE
ini penting di sini jika tidak, itu tidak akan berhasil !.Cara lain untuk melakukan ini di Notepad ++ adalah semua dalam dialog Temukan / Ganti dan dengan regex:
Ctrl+ huntuk memunculkan dialog temukan ganti.
Dalam
Find what:
kotak teks sertakan regex Anda:.*help.*\r?\n
(di mana\r
opsional jika file tidak memiliki ujung garis Windows).Biarkan
Replace with:
kotak teks kosong.Pastikan tombol radio Ekspresi reguler di area Mode Pencarian dipilih. Kemudian klik
Replace All
dan voila! Semua baris yang mengandung istilah pencarian Andahelp
telah dihapus.sumber
Tugas mudah dengan
grep
:Tambahkan
> newFileName
untuk mengarahkan output ke file baru.Memperbarui
Untuk memperjelasnya, perilaku normal akan mencetak garis di layar. Untuk menyalurkannya ke file,
>
dapat digunakan. Jadi, dalam perintah ini:grep
memanggilgrep
program, jelas-v
adalah bendera untuk membalikkan output. Dengan defaulf,grep
mencetak garis yang cocok dengan pola yang diberikan. Dengan bendera ini, itu akan mencetak garis yang tidak cocok dengan pola.help
adalah pola yang cocokfilename
adalah nama file input>
mengalihkan output ke item berikutnewFileName
file baru di mana output akan disimpan.Seperti yang Anda perhatikan, Anda tidak akan menghapus hal-hal di file Anda.
grep
akan membacanya dan file lain akan disimpan, dimodifikasi sesuai.sumber
grep
menginstal. Bagaimanapun saya akan merekomendasikan Anda menginstal GNU grep, itu pasti akan bekerja pada Windows, dan ini adalah alat yang sangat berguna.>
dalam hal ini), memberikan perintah terakhirgrep -v help filename > outputFileName
Anda dapat melakukan ini menggunakan sed:
sed '/help/ d' < inputFile > outputFile
sumber
sed '/^help/ d'
harus bekerja. The^
mewakili awal baris.sed
dangrep
Cari dengan ekspresi reguler:
sumber
\n\n
, ganti dengan `` (tidak ada)Jika Anda menggunakan Windows , coba
findstr
. Alat pihak ketiga tidak diperlukan:Ini mendukung regex juga! Baca saja bantuan alat ini
findstr /?
.NB Jika Anda ingin bekerja dengan file besar dan besar (seperti file log 400 MB) editor teks tidak terlalu efisien dalam memori, jadi, seperti yang telah ditunjukkan seseorang, alat baris perintah adalah cara yang harus dilakukan. Tapi tidak ada grep di Windows, jadi ...
Saya hanya menjalankan ini pada file log 1 GB, dan itu benar-benar memakan waktu 3 detik.
sumber