Hallo,
ich habe gerade das Update von Lenny auf Squeeze gemacht. Dabei wird einem vorgeschlagen (und das scheint jetzt Standard zu sein) anstelle der bash die dash als systemweite Standard-Shell einzurichten.
Wie ich herausfinden musste ist das, wenn man, so wie ich, ein stark angepasstes System hat, unter Umstände keine gute Idee. Die dash kennt bei 'export' die Option -f zum exportieren von Shell Funktionen nicht und weil ich das in der .xinitrc verwende statete X nach dem Update nicht mehr.
Nachdem der Fehler identifiziert war ließ sich das natürlich ganz einfach beheben in dem ich wieder auf die bash zurück gestellt habe. Aber gibt es wirklich kein dash äquivalent zu 'export -f'?
Squeeze, dash und export von Fuktionen
-
- Beiträge: 441
- Registriert: 12.10.2005 23:09:28
- Lizenz eigener Beiträge: MIT Lizenz
-
Kontaktdaten:
Squeeze, dash und export von Fuktionen
"Linux supports the notion of a command line or a shell for the same reason that only children read books with only pictures in them." - Bill Garrett
-
- Beiträge: 22
- Registriert: 20.12.2009 22:30:44
- Lizenz eigener Beiträge: MIT Lizenz
Re: Squeeze, dash und export von Fuktionen
Der Start mit der dash statt der bash Shell ist drei Sekunden schneller, weil die dash Shell eben genau diese Rechenzeit-aufwendige Funktion nicht hat (und andere nicht). Wenn wir jetzt die dash Shell aufmotzen, dass sie diese Funktionen auch hat, wie die bash Shell: Was hat das dann für einen Sinn?
Du kannst auch die dash als /bin/sh benutzen, und dann aber im
/etc/init.d/xdm|kdm
in der ersten Zeile eintragen
#!/bin/bash
Du kannst auch die dash als /bin/sh benutzen, und dann aber im
/etc/init.d/xdm|kdm
in der ersten Zeile eintragen
#!/bin/bash
-
- Beiträge: 441
- Registriert: 12.10.2005 23:09:28
- Lizenz eigener Beiträge: MIT Lizenz
-
Kontaktdaten:
Re: Squeeze, dash und export von Fuktionen
Ja, mir ist schon klar das die dash schneller ist und sie deswegen auch weniger Funktionen hat. Ich wollte ja nur sicher gehen das ich nichts übersehen habe.
"Linux supports the notion of a command line or a shell for the same reason that only children read books with only pictures in them." - Bill Garrett
Re: Squeeze, dash und export von Fuktionen
/etc/init.d/ hat bei mir /bin/bash nur noch in
autofs
ebtables
xendomains
Das Ziel ist doch eigentlich, es ganz aus den Systemskripten herauszubekommen.
Durch /bin/sh->/bin/bash (nominell ein POSIX-Modus) fallen bashismen möglicherweise nicht auf,
da sie durch die bash (compatibility) eventuell doch ausgeführt werden (meine Erfahrung).
Auch:
autofs
ebtables
xendomains
Das Ziel ist doch eigentlich, es ganz aus den Systemskripten herauszubekommen.
Durch /bin/sh->/bin/bash (nominell ein POSIX-Modus) fallen bashismen möglicherweise nicht auf,
da sie durch die bash (compatibility) eventuell doch ausgeführt werden (meine Erfahrung).
Auch:
Code: Alles auswählen
$ bash --posix
bash-4.1$ set | wc -l
62
bash-4.1$
bash-4.1$ dash
$ set | wc -l
35
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-
- Beiträge: 22
- Registriert: 20.12.2009 22:30:44
- Lizenz eigener Beiträge: MIT Lizenz
Re: Squeeze, dash und export von Fuktionen
In Debian gibt es zur Zeit Patches zur Vorbereitung von systemd. Sicherlich noch nicht Squeeze. aber nach dessen Release sind wir sicher auch bald dash los aus dem Init in Debian testing....