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:
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 >
List Navigation
Follow Ups