2016-12-12 1 views
-1

Ich habe versucht, es zu suchen, aber immer noch nicht verstehen, was es tut.Wie funktioniert sed und lesen Zeile in der Shell?

In unserem Code, sed ist die Verwendung als dies:

var1 = $(sed /s/date/date01/g << EOF1 
$var1 
EOF) 

und Leseleitung ist die Verwendung als dies:

/src/path | grep -E "String" | while read line 
do { 
.... some functions to do. 
} 

Ich bin sehr verwirrt, wie es funktioniert.

+1

Welche Art von Shell verwenden Sie? Für die populären Shells (zB Bash, Ksh, Zsh, Sh) ist die Syntax ungültig. Vielleicht ist es sogar Ihre benutzerdefinierte Shell-Anwendung, woher wissen wir? –

+0

Bash Shell-Sprache –

Antwort

0

Dies ist die Verwendung von hier Dokument. '< < EOF1' behandelt alles vor dem nächsten EOF1 als Eingabe von Befehl sed.

In Ihrem Code ersetzt sed ('s') jedes ('g') 'Datum' durch 'date01' von der Eingabe, was der Wert der Variablen var1 ist. Aber ich denke, es ist ein Tippfehler, dass der Schrägstrich vor 's überflüssig ist. Und kein Platz sollte unter =.

Verwandte Themen