Puncte:0

Rulați aplicații cu redirecționare dintr-un script shell

drapel br

Am un script watchdog care rulează aplicații listate într-un fișier. Vreau să pot rula aplicațiile așa cum sunt introduse în acel fișier. În prezent, doar fac bucla prin fișier și le rulez în fundal dacă nu există niciun pid asociat cu acele aplicații, pur și simplu rulez aplicația cu (list_Entry &) pentru a permite toate argumentele pe care le-ar putea avea aplicația și redirecționările I/O intacte. În timp ce argumentele funcționează corect, nu funcționează pentru listEntry care arată ca „my_app >> /tmp/mylog.txt 2>&1”, argumentul de redirecționare nu creează un /tmp/mylog, în schimb stdout este direcționat către scriptul meu . Cum pot preveni acest lucru să se întâmple?

în timp ce adevărat
do
  test /mnt/appsList && {
    input="/mnt/appsList"
    în timp ce IFS= citește linia -r
    do
    dacă echo $linie | grep -q "^[a-z/(]"; apoi
      app_base=$(nume de bază `echo "$line"|cut -f1 -d ' '|tr -d [:space:]`)
      #echo „testarea stării rulării pentru $app_base”
      pid_app=$(pgrep -f $app_base)
      # echo "`date`: pid-ul $app_base este $pid_app" | tee -a $_SYS_LOG_DIR/system_log

      dacă [ -z "$pid_app" ];atunci
         echo „`date` : rulează $line” | tee -a $_SYS_LOG_DIR/system_log
         ($line) &
         dormi 10
      fi
    fi
    terminat < "$input"
  }
somn 5
Terminat

Mulțumiri Ratin

drapel hr
Vă rugăm să [editați] întrebarea dvs. pentru a include un exemplu minim de scenariu

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.