Clemens Hermann <haribeau(at)gmx.de> wrote:
> #!/bin/sh
> cat /usr/local/etc/jails.conf |
> while read dir name ip
> do
> jail ${dir} ${name} ${ip} /bin/sh /etc/rc
> done
> exit 0
(Überflüssiges cat.)
> es funktioniert soweit alles, nur dass ich als erste Meldung (bevor die
> Startmeldungen vom Jail kommen) ein "stty: stdin isn't a terminal" erhalte.
> Das Problem scheint irgendwie mit der pipe von cat zusammenzuhängen.
Naja, stdin hängt dann eben an der Pipe und nicht an einem Terminal,
und das
stty status '^T'
am Anfang von /etc/rc meckert deshalb. Wenn dich diese eher
bedeutungslose Meldung stört, kannst du das etwa so umgehen:
#!/bin/sh
exec 3<&1
while read dir name ip
do
jail ${dir} ${name} ${ip} /bin/sh /etc/rc <&3
done </usr/local/etc/jails.conf
exit 0
Erst den alten stdin-Filedescriptor auf einen unbenutzten sichern,
dann für das Schleifeninnere den geretteten fd wieder zurück auf
stdin kopieren.
-- Christian "naddy" Weisgerber naddy(at)mips.inka.de To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Sun 01 Sep 2002 - 15:30:30 CEST