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

Bash-Frage



Hallo zusammen,

folgendes ist mir nicht ganz klar:

$ a="x
> y
> z"

$ echo $a
x y z

$ echo "$a"
x
y
z

Warum wird das unterschiedlich dargestellt?


Ähnlicher Fall:

$ ls
a  b  c

$ ls | grep b
b

$ echo a b c | grep b
a b c

Wieso kann ich die Datei namens b herausgreppen, obwohl doch a, b und c in einer Zeile ausgegeben werden? Wo liegt der Unterschied zwischen der Ausgabe von ls und echo?

Ah, ich sehe einen:

$ ls | od -cx
0000000   a  \n   b  \n   c  \n
           0a61    0a62    0a63

Wieso wird \n in der Ausgabe von ls nicht als newline dargestellt, hier aber schon:

$ echo -ne "a\nb"
a
b

Ich steh hier grad auf dem Schlauch... Vielleicht hat jemand ein paar Gedanken dazu.

-- 
Andre Tann



Reply to: