Am Sonntag 26 September 2004 10:48 schrieb Christoph Conrad: > Hallo, > > die Bash (version 2.05b.0(1)-release) verschluckt bei folgenden > Versuchen manchmal die Pipe-Zeichen. Ich nehme an, das ist korrekt - > nur, wie umgehe ich es? Kann ich temporär das Pipe-Symbol umdefinieren? > > * Versuch 1 > [EMAIL PROTECTED]> echo "|" > file > [EMAIL PROTECTED]> cat file > > > * Versuch 2 > [EMAIL PROTECTED]> mysql [...query statement...] > [...] > > | Various Artists | Voices Of The Real World | > > [...] > > * Versuch 3 > [EMAIL PROTECTED]> mysql [...query statement...] | uniq > [...] > Various Artists Voices Of The Real World > [...] > > * Versuch 4 > [EMAIL PROTECTED]> mysql [...query statement...] > file > [EMAIL PROTECTED]> cat file > [...] > Various Artists Voices Of The Real World > [...]
Ich denke mal, das ist normal: [EMAIL PROTECTED]:~$ echo "test | test2" test | test2 So hast du es ja auch festgestellt. [EMAIL PROTECTED]:~$ echo test | test2 bash: test2: command not found Logisch, es wird "test" an test2 übergeben, was es aber nicht gibt. [EMAIL PROTECTED]:~$ echo "test | test2" | tr "|" ":" test : test2 Klappt :-) Wird also der Pipeinhalt als String übergeben, passiert auch nix mit dem Pipe-Symbol. mysql übergibt also offensichtlich nicht als String, ergo: echo "$(mysql [...query statement...])" > file Das sollte klappen. (ungestestet) -- Gruß MaxX Hinweis: PMs an diese Adresse werden automatisch vernichtet (Filter nach /dev/null).