Ausgabe über mehrere Zeilen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
Twilo
Beiträge: 255
Registriert: 21.04.2006 00:59:40
Wohnort: Berlin

Ausgabe über mehrere Zeilen

Beitrag von Twilo » 18.08.2007 19:39:32

Hallo,

Code: Alles auswählen

DIR="/home/";
OUTPUT=`find $DIR -type d -perm -2 -ls`;
echo $OUTPUT;
warum wird die Ausgabe in einer einzigen Zeile geschrieben?

mfg
Twilo

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 18.08.2007 23:36:14

ohne Quoting werden die Zeilen vom "echo" Kommando als normale Argumente betrachtet und danach werden diese Argumente in einer Zeile ausgegeben
mit Quoting funktionierts wie gewünscht:

Code: Alles auswählen

gms@gms1 ~/tmp/test $ DIR=~/tmp/test;
gms@gms1 ~/tmp/test $ mkdir t1 t2
gms@gms1 ~/tmp/test $ chmod 777 t1 t2
gms@gms1 ~/tmp/test $ OUTPUT=`find $DIR -type d -perm -2 -ls`;
gms@gms1 ~/tmp/test $ echo "$OUTPUT"
5249308    4 drwxrwxrwx   2 gms      gms          4096 Aug 18 23:31 /home/gms/tmp/test/t2
5249268    4 drwxrwxrwx   2 gms      gms          4096 Aug 18 23:31 /home/gms/tmp/test/t1
Gruß
gms

edit: ist ein ähnlicher Effekt, wie hier

Code: Alles auswählen

gms@gms1 ~/tmp/test $ echo a    b
a b
gms@gms1 ~/tmp/test $ echo "a    b"
a    b
hier habe ich dem ersten echo Kommando zwischen "a" und "b" einige Blanks übergeben, in der Ausgabe sind diese alle ( bis auf eines ) nicht mehr vorhanden

Benutzeravatar
Twilo
Beiträge: 255
Registriert: 21.04.2006 00:59:40
Wohnort: Berlin

Beitrag von Twilo » 19.08.2007 13:13:11

Hallo,

danke, das war es!

Darauf wäre ich nie gekommen :?

mfg
Twilo

Antworten