Ich habe ein langes Dokument mit Befehlen. Mit Notepad ++ oder Regex möchte ich alle Zeilen löschen, die "Hilfe" enthalten, einschließlich keyboard_help usw.
Wie kann das gemacht werden?
Dies ist auch mit Notepad ++ möglich:
Überprüfen Sie Lesezeichen Linie (wenn es keine Mark Registerkarte Update auf die aktuelle Version).
Geben Sie Ihren Suchbegriff ein und klicken Sie auf Alle markieren
Gehen Sie nun zum Menü Suchen → Lesezeichen → Mit Lesezeichen versehene Zeilen entfernen
Erledigt.
cd
in den Pfad zu starten und einen komplexen Befehl einzugeben (sich Gedanken über die Syntax zu machen und permanent Fehler zu machen und dann zu realisieren Es gibt kein Backup. [ Versteh mich nicht falsch, ich benutze die ganze Zeit Konsolenbefehle für andere Dinge, aber für so etwas ist es nur ein Overkill.]BOOKMARK LINE
ist hier wichtig, sonst funktioniert es nicht!.Eine andere Möglichkeit, dies in Notepad ++ zu tun, besteht im Dialogfeld Suchen / Ersetzen und mit Regex:
Ctrl+ h, um das Dialogfeld "Ersetzen ersetzen" aufzurufen.
Find what:
Geben Sie in das Textfeld Ihren regulären Ausdruck ein:.*help.*\r?\n
(wobei der\r
optional ist, falls die Datei keine Windows-Zeilenenden hat).Lassen Sie das
Replace with:
Textfeld leer.Stellen Sie sicher, dass das Optionsfeld Regulärer Ausdruck im Bereich Suchmodus ausgewählt ist. Dann klicken
Replace All
und voila! Alle Zeilen mit Ihrem Suchbegriffhelp
wurden entfernt.quelle
Einfache Aufgabe mit
grep
:Anhängen
> newFileName
, um die Ausgabe in eine neue Datei umzuleiten.Aktualisieren
Um dies zu verdeutlichen, werden die Zeilen normalerweise auf dem Bildschirm gedruckt. Um es an eine Datei weiterzuleiten,
>
kann das verwendet werden. Also in diesem Befehl:grep
ruft dasgrep
Programm natürlich auf-v
ist ein Flag zum Umkehren der Ausgabe. Druckt standardmäßiggrep
die Linien, die dem angegebenen Muster entsprechen. Mit diesem Flag werden die Linien gedruckt, die nicht zum Muster passen.help
ist das passende Musterfilename
ist der Name der Eingabedatei>
leitet die Ausgabe an das folgende Element weiternewFileName
Die neue Datei, in der die Ausgabe gespeichert wird.Wie Sie vielleicht bemerkt haben, werden Sie keine Dinge in Ihrer Datei löschen.
grep
wird es lesen und eine andere Datei wird gespeichert, entsprechend geändert.quelle
grep
installiert haben. Wie auch immer, ich würde Ihnen empfehlen, GNU grep zu installieren, es wird sicherlich unter Windows funktionieren und es ist ein wirklich nützliches Tool.>
in diesem Fall), die einen endgültigen Befehl vongrep -v help filename > outputFileName
Sie können dies mit sed tun:
sed '/help/ d' < inputFile > outputFile
quelle
sed '/^help/ d'
sollte funktionieren. Das^
steht für den Zeilenanfang.sed
undgrep
Suche mit einem regulären Ausdruck:
quelle
\n\n
, ersetzen durch `` (nichts)Wenn Sie unter Windows arbeiten , versuchen Sie es
findstr
. Tools von Drittanbietern werden nicht benötigt:Es unterstützt auch Regex! Lesen Sie einfach die Hilfe des Tools
findstr /?
.PS Wenn Sie mit großen, großen Dateien (wie 400-MB-Protokolldateien) arbeiten möchten, ist ein Texteditor nicht sehr speichereffizient. Wie bereits erwähnt, sind Befehlszeilentools der richtige Weg. Aber unter Windows gibt es kein Grep, also ...
Ich habe dies gerade für eine 1-GB-Protokolldatei ausgeführt, und es hat buchstäblich 3 Sekunden gedauert.
quelle