Bash script - verificarea programului pentru rularea și executarea acestuia (linux) - un nonblog

În general, am avut nevoie pentru a verifica în mod primitiv dacă programul rulează, și dacă nu, atunci rulați-l. Da, există programe de monitorizare a întregului lucru (de exemplu, mon), dar nu am vrut să le pun din cauza unui program, așa că am scris un mic script.







Mai întâi, să vedem dacă programul se execută sau nu:

ps aux afișează procesele care rulează.
grep [h] imprimă rezultatele de la htop, iar dacă prima literă a procesului este închisă în paranteze pătrate, atunci "grep htop" va fi eliminată din listă.
wc -l numără numărul de rânduri (procese care rulează).
Se pare ca aceasta:

După aceasta, trebuie să scrieți o condiție pentru verificarea și pornirea programului.






dacă ["$ ret" -eq 0] - dacă (dacă) valoarea variabilei (comutatorul -eq este egal) este 0, atunci (apoi):
echo "Running Htop" - tipăriți textul: "Începe Htop";
somn 1 - setați întârzierea la pornirea la 1 secundă;
htop - executați programul Htop;
ieșirea 1 - ieșiți din scenariu;
Altfel (altceva):
echo "EXIT Htop deja rulează!" - tipăriți textul: "Htop rulează deja!"
ieșire 1 - ieșiți din scenariu.
Construcția "Dacă, atunci, altfel." Necesită se termină cu fi;

Este ușor de scris pe Bash și, de asemenea, foarte interesant, în alte moduri, ca orice altceva în programare. Deci, încercați să scrieți ceva singur, veți reuși cu siguranță. În plus, bash-ul este plin de toată documentația, inclusiv rusă.

dacă ["$ ret" -eq 1] funcționează astfel cu zero, întotdeauna crede că rulează deoarece comanda însăși creează un proces cu acest nume







Trimiteți-le prietenilor: