As Peter Ross wrote:
> es gibt bei uns den Bedarf an EINEM Konfigurationsfile fuer
> Environmentvariablen, welches immer funktioniert, egal wie und wo man ein
> Programm ausfuehrt (sh, csh, tcsh, perl, cron, eingeloggt via Telnet oder
> rlogin oder ssh ..).
Geht gar nicht. Plain sh (bzw. ksh) kann keine
Initialisierungsdateien ausführen, wenn sie nicht interaktiv gestartet
wird. Das ist ein Bug^H^H^HFeature dieser Shells, man hat trotz eines
seit Jahren funktionierenden .{csh,bash}rc Mechanismus in der ksh und
damit dann in der Posix-Shell eine Krücke wie $ENV erfunden, die
mittlerweile auch nur noch für interaktive Shells bewertet wird (da
sie ansonsten Sicherheitsprobleme verursachen konnte).
Bedank Dich bei Dave Korn.
> login.conf ist ja schon ganz schoen, aber tut nicht alles (z.B. haben via
> cron gestartete perl-Skripte nichts davon).
Warum eigentlich nicht? Entgegen dem Namen sollten Login-Klassen auch
für nichtinteraktive Arbeit ausgeführt werden.
> Erschwerend kommt noch dazu, dass ich das eigentlich fuer FreeBSD,
> Debian Linux und Solaris brauche.
Auch das noch. :)
> Kann mir jemand einen Tip geben, wie ich den Aufwand minimieren kann?
Du kannst einen Wrapper schreiben, der mit eval in den
Shell-Init-Dateien eingebunden werden kann und dann das Richtige tut:
eval `local-env-setup`
Der müßte dann $SHELL auswerten um zu entscheiden, ob er csh- oder
sh-Semantik ausspucken soll.
-- cheers, J"org .-.-. --... ...-- -.. . DL8DTL http://www.sax.de/~joerg/ NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Mon 09 Jul 2001 - 20:51:20 CEST