Giunsa ang Pagdagan sa usa ka Sugo nga adunay Limitasyon sa Oras (Timeout) Sa Linux


Ang Linux adunay daghang mga sugo, ang matag sugo talagsaon ug gigamit sa piho nga mga kaso. Ang tumong sa Linux mao ang pagtabang kanimo nga mahimong paspas ug episyente kutob sa mahimo. Ang usa ka kabtangan sa usa ka Linux command mao ang time limit. Mahimo nimong itakda ang limitasyon sa oras alang sa bisan unsang mando nga gusto nimo. Kung ang oras matapos, ang mando mohunong sa pagpatuman.

Niini nga mubo nga panudlo, makakat-on ka og duha ka pamaagi kung giunsa nimo magamit ang limitasyon sa oras sa imong mga mando.

  1. Pagdalag Linux Commands Gamit ang timeout Tool
  2. Pagdalag Linux Commands Gamit ang Timelimit Program

Ang Linux adunay command-line utility nga gitawag ug timeout, nga makapahimo kanimo sa pagpatuman sa usa ka command nga adunay limitasyon sa panahon.

Ang syntax niini mao ang mosunod.

timeout [OPTION] DURATION COMMAND [ARG]...

Aron magamit ang sugo, imong itakda ang usa ka timeout nga kantidad (sa mga segundo) uban ang sugo nga gusto nimong ipadagan. Pananglitan, aron ma-timeout ang usa ka ping command pagkahuman sa 5 segundos, mahimo nimong ipadagan ang mosunud nga mando.

# timeout 5s ping google.com

Dili nimo kinahanglan nga itakda ang (mga) pagkahuman sa numero 5. Ang mando sa ubos parehas ug magamit gihapon.

# timeout 5 ping google.com

Ang ubang mga suffix naglakip sa:

  • m nga nagrepresentar sa mga minuto
  • h nga nagrepresentar sa mga oras
  • d nga nagrepresentar sa mga adlaw

Usahay ang mga sugo mahimong magpadayon sa pagdagan bisan kung ang timeout ipadala ang inisyal nga signal. Sa maong mga higayon, mahimo nimong gamiton ang --kill-after nga opsyon.

Ania ang syntax.

-k, --kill-after=DURATION

Kinahanglan nimong itakda ang gidugayon aron mahibal-an ang timeout pagkahuman sa oras nga ipadala ang signal sa pagpatay.

Pananglitan, ang gipakita nga sugo mahunong pagkahuman sa 8 segundos.

# timeout 8s tail -f /var/log/syslog

Ang programa sa Timelimit nagpadagan sa usa ka gihatag nga mando unya gitapos ang proseso pagkahuman sa usa ka piho nga oras gamit ang gihatag nga signal. Kini sa sinugdan nagpasa sa usa ka signal sa pasidaan, ug pagkahuman sa usa ka timeout, kini nagpadala sa signal sa pagpatay.

Dili sama sa kapilian sa timeout, ang Timelimit adunay daghang mga kapilian sama sa killsig, warnsig, killtime, ug warntime.

Ang timelimit makit-an sa mga repositoryo sa mga sistema nga nakabase sa Debian ug aron ma-install kini, gamita ang mosunud nga mando.

$ sudo apt install timelimit

Para sa mga sistema nga nakabase sa Arch, mahimo nimo kining i-install gamit ang AUR helper programs e.g., Pacaur Pacman, ug Packer.

# Pacman -S timelimit
# pacaur -S timelimit
# packer -S timelimit

Uban pang mga distribusyon sa Linux, mahimo nimong i-download ang gigikanan sa timelimit ug mano-mano nga i-install kini.

Human sa pag-instalar, pagdagan ang mosunod nga sugo ug ipiho ang oras. Niini nga pananglitan, mahimo nimong gamiton ang 10 segundos.

$ timelimit -t10 tail -f /var/log/pacman.log

Timan-i nga kung dili nimo ipiho ang mga argumento, ang Timelimit naggamit sa mga default nga kantidad: warntime=3600 seconds, warnsig=15, killtime=120, ug killsig=9.

Sa kini nga giya, nahibal-an nimo kung giunsa ang pagpadagan sa mga mando nga adunay limitasyon sa oras sa Linux. Sa pagrepaso, mahimo nimong gamiton ang Timeout command o ang Timelimit utility.

Ang Timeout nga command sayon gamiton, apan ang Timelimit utility medyo komplikado apan adunay daghang mga kapilian. Mahimo nimong pilion ang labing angay nga kapilian depende sa imong mga panginahanglan.