Haben Sie eine gefunden, die mit Unicode funktioniert? In den Antworten ist überhaupt nicht klar, ob die verschiedenen Tools Unicode-fähig sind oder nicht.
Peter Mortensen
1
Ich habe aufgegeben und die integrierte Suche von Visual Studio verwendet (:
Jeroen Wiert Pluimers
Antworten:
8
Schauen Sie sich für ein Befehlszeilentool die Antwort von KeyboardMonkey an (ich bin mir jedoch nicht sicher, ob Unicode unterstützt wird).
Sorry für den Nekro, aber DANKE !! Ich habe dieses Tool verzweifelt in Windows, und dieses dnGREP ist ein Geschenk des Himmels!
Pepoluan
3
Die meisten Windows-Versionen enthalten den Befehl "findstr", der ähnlich wie grep funktioniert. Ich kenne seine Unicode-Fähigkeiten nicht, aber meines Wissens sollte es damit keine Probleme geben.
UnxUtils ist alt und wird nicht mehr unterstützt - zuletzt 2003 aktualisiert. Probieren Sie
quack quixote
1
Ja, wie Fluxtendu erwähnt,
PowerGREP macht das alles. Es ist aber proprietär und kostet 149 Euro.
dnGREP wird auch funktionieren und hat einen ähnlichen kostenlosen Funktionsumfang.
Jedoch,
Cygwin kann auch grep installieren (und eine ganze Menge mehr, wenn Sie möchten). Es führt eine Unicode-Suche mit dem -USwitch durch. Ich würde Cygwin als einfachste Lösung empfehlen, wenn Sie mit Unix grep vertraut sind. Stellen Sie einfach sicher, dass Sie Ihren PATH anhängen, und Sie können ihn auch in der Windows-Shell verwenden.
Im Grunde genommen werden alle Unicode-Zeichen aus den Dateien gezogen, sodass Sie sie dann an das von Ihnen verwendete Windows-Grepalike weiterleiten können, sei es findstr(nativ) oder wie ich gnuwin32 grep für Windows (tut, was es verspricht).
Du bekommst also so etwas wie:
strings *.odf | grep -i "texttosearch"
findstr funktioniert auch für viele dinge, aber grep ist einfach rundum besser.
Wie genau beantwortet dies die Frage? Das stringsProgramm wird zum Auffinden von Textzeichenfolgen verwendet, die mit Nicht-Textdaten ("Binärdaten") gemischt sind. zB ausführbare Dateien. Die Frage sagt nichts über das Einbetten von Textzeichenfolgen in Binärdaten aus. ………………… Was ist, wenn ich eine Unicode-Textdatei nach Zeichen wie π und durchsuchen möchte ≤? Würde ich tippen strings dissertation | findstr "π"? Hat findstrUnicode umgehen? Wenn ja, warum dann nicht einfach sagen findstr "π" dissertation, was vor fünf Jahren vorgeschlagen wurde? Wenn nicht, was haben Sie dann gewonnen?
G-Man sagt, dass Monica
guter Punkt. Ich nehme an, ich habe nicht richtig verstanden, was der Fragesteller wollte
Some_Guy
0
Siehe BareGrep (kostenlose Version hat einen Startbildschirm), der eine ziemlich vollständige grafische Darstellung zu sein scheint. In der Dokumentation wird die Unterstützung für "Viele Dateiformate" erwähnt, sodass ich mir vorstellen kann, dass Unicode enthalten ist.
Ich bin mir ziemlich sicher, dass Unicode NICHT unterstützt wird. Ich habe es versucht und es funktioniert nicht mit UTF-16-Dateien. Haben sie per E-Mail bestätigt.
Antworten:
Schauen Sie sich für ein Befehlszeilentool die Antwort von KeyboardMonkey an (ich bin mir jedoch nicht sicher, ob Unicode unterstützt wird).
Für ein (Open Source) GUI-Tool: dnGREP
Für ein einfacheres (nur Such-) GUI-Tool: AstroGrep und für ein besseres (und teureres): PowerGREP
quelle
Die meisten Windows-Versionen enthalten den Befehl "findstr", der ähnlich wie grep funktioniert. Ich kenne seine Unicode-Fähigkeiten nicht, aber meines Wissens sollte es damit keine Probleme geben.
quelle
Update: GnuWin32 ist eine neuere Version dieser Tools. (Danke Quack)
Hier finden Sie eine Liste der Pakete und können grep einzeln herunterladen.
Schauen Sie sich UnxUtils an , zu dem auch grep gehört. Ich benutze diese auch auf meinem Arbeits-PC.
quelle
Ja, wie Fluxtendu erwähnt,
Jedoch,
-U
Switch durch. Ich würde Cygwin als einfachste Lösung empfehlen, wenn Sie mit Unix grep vertraut sind. Stellen Sie einfach sicher, dass Sie Ihren PATH anhängen, und Sie können ihn auch in der Windows-Shell verwenden.quelle
Ich habe diese Frage vor einiger Zeit gestellt und schließlich entdeckt, dass grepWin eine GUI über das Shell-Kontextmenü ist. Funktioniert ganz gut.
quelle
Der einfachste Weg, dies zu tun, ist ein Windows-Dienstprogramm namens "Strings", das genau das tut, wonach Sie suchen:
Strings (Sysinternals)
Im Grunde genommen werden alle Unicode-Zeichen aus den Dateien gezogen, sodass Sie sie dann an das von Ihnen verwendete Windows-Grepalike weiterleiten können, sei es
findstr
(nativ) oder wie ich gnuwin32 grep für Windows (tut, was es verspricht).Du bekommst also so etwas wie:
findstr
funktioniert auch für viele dinge, aber grep ist einfach rundum besser.quelle
strings
Programm wird zum Auffinden von Textzeichenfolgen verwendet, die mit Nicht-Textdaten ("Binärdaten") gemischt sind. zB ausführbare Dateien. Die Frage sagt nichts über das Einbetten von Textzeichenfolgen in Binärdaten aus. ………………… Was ist, wenn ich eine Unicode-Textdatei nach Zeichen wieπ
und durchsuchen möchte≤
? Würde ich tippenstrings dissertation | findstr "π"
? Hatfindstr
Unicode umgehen? Wenn ja, warum dann nicht einfach sagenfindstr "π" dissertation
, was vor fünf Jahren vorgeschlagen wurde? Wenn nicht, was haben Sie dann gewonnen?Siehe BareGrep (kostenlose Version hat einen Startbildschirm), der eine ziemlich vollständige grafische Darstellung zu sein scheint. In der Dokumentation wird die Unterstützung für "Viele Dateiformate" erwähnt, sodass ich mir vorstellen kann, dass Unicode enthalten ist.
quelle