Mailinglist Archive: opensuse-programming-de (27 mails)
| < Previous | Next > |
Re: [opensuse-programming-de] Pipe ueber FIFO
- From: Bernhard Walle <bernhard@xxxxxxxxx>
- Date: Sun, 10 Oct 2010 19:03:22 +0200
- Message-id: <4CB1F1DA.9010900@xxxxxxxxx>
Hallo Thomas,
Am 10.10.10 18:04, schrieb Thomas Moritz:
Das Programm erkennt anhand von argv[0], über welchen Namen es
aufgerufen wird. Daher ist das Verhalten unterschiedlich, obwohl ein und
dasselbe Binary aufgerufen wird. Betrachte es einfach wie einen
zusätzlichen Konfigurationsparameter.
Nicht sämtliche Extensions sind aktiviert. Im Wesentlichen ist die
Unterschiedung dazu da, dass das Verhalten 100 % kompatibel zur
POSIX-/bin/sh ist. Um Skripte zu testen, ob sie auch gar keine
Bash-Extension verwenden, taugt dieses Verhalten der bash nicht. Sonst
würden ja praktisch alle Skripte out-of-the-box mit /bin/sh -> dash
(oder Busybox ash oder nash) laufen.
Gruß,
Bernhard
Am 10.10.10 18:04, schrieb Thomas Moritz:
Am Sonntag, 10. Oktober 2010 17:04:33 schrieb Marcus Meissner:
Hallo Marcus,
besten Dank fuer Deine schnelle Antwort, aber ...
Je nachdem was in der ersten Zeile steht, wendet die Bash
verschiedene Personalitaeten an. /bin/sh ist die POSIX shell ohne
Bash extensions zb.
Daher kommt das Verhalten.
Was mir trotzdem aus folgenden Gruenden nicht ganz klar wird:
ls -l /bin/bash
-rwxr-xr-x 1 root root 627376 5. Jul 13:47 /bin/bash
ls -l /bin/sh
lrwxrwxrwx 1 root root 4 20. Aug 18:35 /bin/sh -> bash
Das Programm erkennt anhand von argv[0], über welchen Namen es
aufgerufen wird. Daher ist das Verhalten unterschiedlich, obwohl ein und
dasselbe Binary aufgerufen wird. Betrachte es einfach wie einen
zusätzlichen Konfigurationsparameter.
$>sh -extensions $>bash -extensions
Nicht sämtliche Extensions sind aktiviert. Im Wesentlichen ist die
Unterschiedung dazu da, dass das Verhalten 100 % kompatibel zur
POSIX-/bin/sh ist. Um Skripte zu testen, ob sie auch gar keine
Bash-Extension verwenden, taugt dieses Verhalten der bash nicht. Sonst
würden ja praktisch alle Skripte out-of-the-box mit /bin/sh -> dash
(oder Busybox ash oder nash) laufen.
Gruß,
Bernhard
| < Previous | Next > |