[linux-l] trap-Kommandoausführung

Lutz Meinert lutz.meinert at madvedge.de
Mo Jun 7 18:40:51 CEST 2004


Hallo,

Habe eine kleine Irritation bezüglich trap!

Gebe ich auf der Konsole folgendes ein:

$ trap "" 2 3
p10: lutz  /data/DataL/Config
$ trap
trap -- '' SIGINT
trap -- '' SIGQUIT
 
und möchte anschließend beispielsweise ein "find / *bla" mit <Strg>+C
abbrechen, funktioniert trap prima, indem er jenes - wie zuvor definiert
- verhindert.


Gebe ich nun aber folgendes ein:

$ trap 'touch ~/bla' 2 3
p10: lutz  /data/DataL/Config
$ trap
trap -- 'touch ~/bla' SIGINT
trap -- 'touch ~/bla' SIGQUIT

und anschließend wieder ein "find / *bla" mit <Strg>+C abbrechen
will, kann ich dies zwar nun wieder (so weit, so gut), aber das für den
Fall eines Abbruchs trap zugewiesene Kommando "touch ~/bla" wird
offensichtlich nicht ausgeführt, da keine bla-Datei angelegt worden ist.
Habe dieses Phänomen mit unterschiedlichen Befehlen, Linux-Versionen auf
unterschiedlichen Rechnern stets reproduzieren können. Laut bash-manpage
müsste die Syntax korrekt sein.

Kann jemand den Fehler entdecken?

Mit ratlosen Grüßen
Lutz

-- 
Lutz Meinert <lutz.meinert at madvedge.de>





Mehr Informationen über die Mailingliste linux-l