Wie kann man in der CMD-Anwendung Grep nach "" suchen ohne, dass es fehlinterpretiert wird?

2 Antworten

Mir ist nicht ganz klar, was Du tust: CMD ist MS-DOS pur und hat mit Linux rein gar nichts zu tun.

Unter Unix funktioniert der Backslash als genereller Escape-Character schon immer problemlos. Nur unter MS-DOS klappt es bis heute nicht richtig. Der Interpreter unterstützt Anführungszeichen nur rudimentär, um Dateinamen mit Leerzeichen handzuhaben. Für alles, was darüber hinaus geht, muss jedes Programm sein eigenes Süppchen kochen. Manche verwenden \ oder ^ als Escape-Character, andere doppeln die Anführungszeichen oder ignorieren sie komplett.

Wenn Du Dich unbedingt mit einem 40 Jahre alten Rohrkrepierer quälen willst, musst Du wohl mit auch find/findstr leben.

Ansonsten probier mal:

grep _Ds202\x22f3 .\*

oder

echo _Ds202"f3 >myPattern.grep
grep -f myPattern.grep .\*
$ cat grep_test
something
foo
jkl_Ds202"f3asdf
bar
_Ds202
_Ds202"f3
42
$ grep "_Ds202\"f3" grep_test
jkl_Ds202"f3asdf
_Ds202"f3
Woher ich das weiß:Studium / Ausbildung – Informatik