[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: awk



Moin,

On Mon, 2006-11-13 at 16:46 +0100, Rüdiger Noack wrote:
> Moin
> 
> Wie kann man awk dazu bringen etwas zu tun, wenn der Eingabestrom "leer"
> ist?
> 
> Beispiel zur Verdeutlichung:
> [...]
> erno@flinker:~$ echo -n "" | awk '{if ($0 != "") {print $1} else {print
> "else"}}'
> erno@flinker:~$

echo -n "" liefert aber keinen "leeren" Strom, sondern gar nichts. Nimm
mal echo -en "\n" und Du generierst wieder einen Strom der "etwas"
enthält, nämlich das Ende der Zeichenkette (Strom) ...

Das Problem hier ist, das awk gar nicht erst startet wenn der Strom
nicht existent ist. Beispiel:
hgb@sokrates:~$ echo -n "test" | awk '{print "start"}{if ($0 != "") \\ 
{print $1} else {print "else"}}'
start
test

hgb@sokrates:~$ echo -n "" | awk '{print "start"}{if ($0 != "") \\
{print $1} else {print "else"}}'

[[kein output]]

Du musst also selbst dafür sorgen, dass kein nichtexistenter Strom
geliefert wird ... oder aber sehr tief in awk wühlen inwieweit Du
nichtexistente Eingaben abfangen kannst ...

Gruss
	-- hgb

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: