2017-10-15 2 views
0

Wenn ich printf '<a>' laufen bekomme ich, was ich erwarte.printf '<a> ' gibt Fehler - kann die angegebene Datei nicht finden

Wenn ich printf \'<a>\' ausführen bekomme ich ... kann die angegebene Datei nicht finden.

Wenn ich Printf von NodeJS v6.11.3 ausführe, erzwingt letzteres. Wer weiß warum und wie ich darüber hinweg komme?

Ich starte git bash unter Windows.

+1

ich etwas vage verwandte Neugier in einer Produktions Make-Datei letzte Woche gefunden. Die Befehlszeilen, die von 'make' widergegeben wurden, sagten:' file1.out sed -e 's/something/other thing /' '. Es klappt; Es bearbeitet 'file1.in' und sendet die Ausgabe an' file1.out', obwohl sie beide vor dem Befehl 'sed' erscheinen. I/O-Umleitung ist nichts, wenn nicht flexibel. –

Antwort

4

Wenn Sie die Anführungszeichen nicht speziell machen (indem Sie sie umgehen), wird < zu einer Weiterleitung und versucht, stdin aus einer Datei namens a umzuleiten. Sie müssen nur das richtige Zitieren/Entkommen finden, um sicherzustellen, dass die printf nicht zu viele Escape-Zeichen hat.

Wenn Sie die einfachen Anführungszeichen zu drucken versuchen, versuchen, sich

printf "'<a>'" 
+0

danke in NodeJS Ich musste die Zeichenfolge in doppelte Anführungszeichen nicht einfache Anführungszeichen umbrechen, um dies zu verhindern – danday74

Verwandte Themen