On Tue, Feb 06, 2018 at 05:42:44PM +0100, felix wrote: > ... à "sourcer" ou à lancer pour la démo: > https://f-hauri.ch/vrac/shell_connector.sh Exemple:
$ wget https://f-hauri.ch/vrac/shell_connector.sh ... $ . shell_connector.sh $ tty /dev/pts/20 $ ps --tty pts/20 fw PID TTY STAT TIME COMMAND 29019 pts/20 Ss 0:00 bash 30745 pts/20 R+ 0:00 \_ ps --tty pts/20 fw $ newConnector /usr/bin/bc "-l" '3*4' 12 $ ps --tty pts/20 fw PID TTY STAT TIME COMMAND 29019 pts/20 Ss 0:00 bash 30944 pts/20 S 0:00 \_ bash 30945 pts/20 S 0:00 | \_ /usr/bin/bc -l 30952 pts/20 R+ 0:00 \_ ps --tty pts/20 fw $ declare -p PI bash: declare: PI: not found $ myBc '4*a(1)' PI $ declare -p PI declare -- PI="3.14159265358979323844" $ newConnector /bin/date '-f - +%s' @0 0 $ myDate '2000-01-01' 946681200 $ myDate "$(ps ho lstart 1)" boottime $ myDate now now;myBc "$now-$boottime" uptime;\ read utm idl </proc/uptime;printf "%s\n" ${utm%%.*} $uptime 42134906 42134906 $ ps --tty pts/20 fw PID TTY STAT TIME COMMAND 29019 pts/20 Ss 0:00 bash 30944 pts/20 S 0:00 \_ bash 30945 pts/20 S 0:00 | \_ /usr/bin/bc -l 32615 pts/20 S 0:00 \_ bash 32616 pts/20 S 0:00 | \_ /bin/date -f - +%s 3162 pts/20 R+ 0:00 \_ ps --tty pts/20 fw J'ai donc un process `bc` (30945), qui tourne en arrière tâche et qui effectue tous les calculs que je lui demande, ainsi qu'un process `date` (32616), qui converti en *unix time stamp*, les dates que je lui soumet... Pour terminer un process, il faut fermer ses descripteur, dans l'ordre (du dernier au premier:) $ eval "exec $DATEOUT>&-" $ eval "exec $DATEIN>&-" $ ps --tty pts/20 fw PID TTY STAT TIME COMMAND 4936 pts/20 Ss 0:00 bash 5256 pts/20 S 0:00 \_ bash 5257 pts/20 S 0:00 | \_ /usr/bin/bc -l 6358 pts/20 R+ 0:00 \_ ps --tty pts/20 fw Ce qui n'est pas nécessaire, puisque les sous-tâches se terminent lorsque le process courrant termine. > Question et commentaires bienvenus... -- Félix Hauri - <fe...@f-hauri.ch> - http://www.f-hauri.ch _______________________________________________ gull mailing list gull@forum.linux-gull.ch http://forum.linux-gull.ch/mailman/listinfo/gull