Bei der Ausführung von grep in Unix stecken geblieben

1

nach dem Ausführen von grep '19 -12-2008, ohne das Zitat zu beenden, blieb ich bei & gt; in der Kommandozeile wie man aussteigt


quelle
Welche Shell benutzt du?
Nathan Fellman

Antworten:

10

Beenden Sie es, indem Sie Ihr Zitat schließen (d. H. Einen weiteren Apostroph eingeben).

Oder wenn Sie Ihre Meinung geändert haben und den Befehl nicht mehr ausführen möchten, Strg c Verlassen Sie den Befehl und kehren Sie in die Shell zurück.

Mark Rushakoff
quelle
3

Einfach STRG-C drücken und neu starten oder eingeben ' EINGEBEN in der nächsten Zeile. Die Eingabeaufforderung, die Sie sehen ( > ) liegt daran, dass Sie den Befehl noch nicht beendet haben - die Shell glaubt, Sie wollten diesen Zeilenvorschub in einer Zeichenfolge und warten darauf, dass Sie diese Zeichenfolge mit einem anderen Anführungszeichen schließen.


quelle
Zumindest mit bash / grepBehandelt den Zeilenvorschub nicht als Literal. echo -en hi | grep 'h ' (mit single oder Doppelte Anführungszeichen und mit Zeilenumbrüchen anstelle von Leerzeichen) nehmen beide die hi. Wenn Sie tatsächlich setzen Leerzeichen in den Anführungszeichen nimmt es das nicht auf hi.
Interessant, das muss ein Grep-Feature sein - es funktioniert mit grep 'h<lf>i' aber echo gibt es wie erwartet aus, mit ein eingebetteter Zeilenvorschub.
1

Setzen Sie einen Backslash an Ihr Anführungszeichen

$ grep \'19-12-2008
knittl
quelle