Essaie avec :
pid_c="$(echo $$ && exec ps -fu $USER >&2)" |
En fait, sans le exec, $() crée un sous-shell, et lancer un "ps" démarre le binaire en fils du shell.
Avec exec, $() crée un sous-shell, et lancer un "exec ps ..." démarre le binaire en remplacement du sous-shell, donc avec le même PID que ce dernier.
edit : ah mince, je viens de capter ce que tu dis, un instant...
edit 2 : je propose ceci, qu'en penses-tu ?
pid_c=$(ksh -c 'echo $$ && exec ps -fu $USER') |
Message édité par Elmoricq le 22-06-2007 à 16:08:03