[Bash] Draaiend script opnieuw lezen

Pagina: 1
Acties:

  • ajvdvegt
  • Registratie: Maart 2000
  • Laatst online: 04-12-2025
Ik heb een proces draaien via een bash-script. Dat bash-script draait ook, en controleert elke paar seconden of het kind-proces nog wel actief is, en herstart het zo nodig.
Nu heb ik het bash script aangepast (1 regel uitgecommentarieerd), en ik zou bash graag het script opnieuw laten lezen zonder het te stoppen en te starten (want dan wordt de applicatie die bewaakt wordt ook gestopt en gestart). Ik hoopte dat er een SIGNAL zou zijn, maar zoiets kan ik niet vinden (SIGUSR1 ?). Weet iemand een manier?

Ps. ik weet dat het herlezen van een draaiend script gevaarlijk is, omdat het een heel andere script zou kunnen zijn geworden inmiddels en je dan dus niet weet in welke toestand hij verder gaat. Maar in dit geval zou het wel handig zijn....

I don't kill flies, but I like to mess with their minds. I hold them above globes. They freak out and yell "Whooa, I'm *way* too high." -- Bruce Baum


  • MindStorm
  • Registratie: Juli 2002
  • Laatst online: 16-01-2024
Volgens mij is dit niet mogelijk, mede om de veiligheidsreden die je al noemt.

Wat je natuurlijk zou kunnen doen is checken of het proces al draait voordat je het probeert te starten. Bijvoorbeeld met:

Bash:
1
pgrep -f <procesnaam>


wanneer je een PID terugkrijgt weet je dat ie draait...(dit werkt natuurlijk niet voor iets met veel childprocessen, maar die hebben zelf vaak wel iets bruikbaars).