Kako pokrenuti naredbu s vremenskim ograničenjem (Timeout) u Linuxu
Linux dolazi s obiljem naredbi, svaka naredba je jedinstvena i koristi se u određenim slučajevima. Cilj Linuxa je pomoći vam da budete što brži i učinkovitiji. Jedno svojstvo Linux naredbe je vremensko ograničenje. Možete postaviti vremensko ograničenje za bilo koju naredbu koju želite. Ako vrijeme istekne, naredba se prestaje izvršavati.
U ovom kratkom vodiču naučit ćete dvije metode o tome kako možete koristiti vremensko ograničenje u svojim naredbama.
Na ovoj stranici:
- Pokrenite Linux naredbe pomoću alata za vremensko ograničenje
- Izvršite Linux naredbe pomoću programa Timelimit
Pokrenite Linux naredbe pomoću alata za vremensko ograničenje
Linux ima pomoćni program naredbenog retka koji se zove timeout, koji vam omogućuje izvršavanje naredbe s vremenskim ograničenjem.
Sintaksa mu je sljedeća.
timeout [OPTION] DURATION COMMAND [ARG]...
Da biste koristili naredbu, odredite vrijednost timeout (u sekundama) s naredbom koju želite pokrenuti. Na primjer, da biste istekli ping naredbu nakon 5 sekundi, možete pokrenuti sljedeću naredbu.
timeout 5s ping google.com
Ne morate navesti (s) nakon broja 5. Naredba u nastavku je ista i i dalje će raditi.
timeout 5 ping google.com
Ostali sufiksi uključuju:
m
predstavlja minuteh
predstavlja sated
predstavlja dane
Ponekad se naredbe mogu nastaviti izvoditi čak i nakon što timeout pošalje početni signal. U takvim slučajevima možete koristiti opciju --kill-after
.
Evo sintakse.
-k, --kill-after=DURATION
Morate navesti trajanje kako bi timeout znao nakon koliko vremena treba poslati signal za ubijanje.
Na primjer, prikazana naredba će se prekinuti nakon 8 sekundi.
timeout 8s tail -f /var/log/syslog
Izvršite Linux naredbe pomoću programa Timelimit
Program Timelimit pokreće zadanu naredbu, a zatim prekida proces nakon određenog vremena koristeći zadani signal. U početku šalje signal upozorenja, a zatim nakon isteka vremena šalje signal za ubijanje.
Za razliku od opcije timeout, Timelimit ima više opcija kao što su killsig, warnsig, killtime > i vrijeme upozorenja.
Vremensko ograničenje može se pronaći u spremištima sustava temeljenih na Debianu, a za instalaciju koristite sljedeću naredbu.
sudo apt install timelimit
Za Arch sustave, možete ga instalirati pomoću AUR pomoćnih programa, npr. Pacaur Pacman i Paker.
Pacman -S timelimit
pacaur -S timelimit
packer -S timelimit
Ostale distribucije Linuxa, možete preuzeti timelimit izvor i ručno ga instalirati.
Nakon instalacije pokrenite sljedeću naredbu i odredite vrijeme. U ovom primjeru možete koristiti 10 sekundi.
timelimit -t10 tail -f /var/log/pacman.log
Imajte na umu da ako ne navedete argumente, Timelimit koristi zadane vrijednosti: warntime=3600 sekundi, warnsig=15, killtime =120 i killsig=9.
Zaključak
U ovom ste vodiču naučili kako pokretati naredbe s vremenskim ograničenjem u Linuxu. U pregledu možete koristiti naredbu Timeout ili uslužni program Timeout.
Naredba Timeout jednostavna je za korištenje, ali je uslužni program Timeout malo kompliciran, ali ima više opcija. Možete odabrati najprikladniju opciju ovisno o vašim potrebama.