Les Mikesell wrote: > Jerry Geis wrote: >> Is there a command that will monitor a process for exiting (crash or >> normal exit) and >> then execute another command based on the said process no longer being >> active? >> >> Or is there a "wrapper" command that runs a process and when that >> process exists >> due to crashing or just exiting normally) that another process can be >> run. >> > > Why not use a shell script as a wrapper? If you don't put something in > the background with an & on the line, the next line will execute when/if > the program started on the current line exits. There are nearly always > other copies of the shell running anyway so you get shared-text > efficiency. If you just want to keep restarting the same program, > something like this should run forever. > > while : > do > my_program > done > This has two issues (at least): - if the program is a daemon, it returns immediately, so the scrpit will try to start the program again and again - if the script gets a signal, it will be killed. back to start. also, whatever method is used, one must not spend cpu restarting a program that crashes after 2 seconds (thus looping on restart). if the program keeps crashing, an alert should be sent (and the program fixed or removed).