ലിനക്സിൽ സമയപരിധി (ടൈമൗട്ട്) ഉപയോഗിച്ച് ഒരു കമാൻഡ് എങ്ങനെ പ്രവർത്തിപ്പിക്കാം


ലിനക്uസിൽ ധാരാളം കമാൻഡുകൾ ഉണ്ട്, ഓരോ കമാൻഡും അദ്വിതീയവും പ്രത്യേക സന്ദർഭങ്ങളിൽ ഉപയോഗിക്കുന്നു. കഴിയുന്നത്ര വേഗത്തിലും കാര്യക്ഷമമായും പ്രവർത്തിക്കാൻ നിങ്ങളെ സഹായിക്കുക എന്നതാണ് ലിനക്സിന്റെ ലക്ഷ്യം. ഒരു Linux കമാൻഡിന്റെ ഒരു പ്രോപ്പർട്ടി സമയപരിധിയാണ്. നിങ്ങൾക്ക് ആവശ്യമുള്ള ഏത് കമാൻഡിനും സമയപരിധി നിശ്ചയിക്കാം. സമയം കാലഹരണപ്പെടുകയാണെങ്കിൽ, കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യുന്നത് നിർത്തുന്നു.

ഈ ഹ്രസ്വ ട്യൂട്ടോറിയലിൽ, നിങ്ങളുടെ കമാൻഡുകളിൽ സമയപരിധി എങ്ങനെ ഉപയോഗിക്കാമെന്നതിനെക്കുറിച്ചുള്ള രണ്ട് രീതികൾ നിങ്ങൾ പഠിക്കാൻ പോകുന്നു.

  1. ടൈംഔട്ട് ടൂൾ ഉപയോഗിച്ച് Linux കമാൻഡുകൾ പ്രവർത്തിപ്പിക്കുക
  2. ടൈംലിമിറ്റ് പ്രോഗ്രാം ഉപയോഗിച്ച് Linux കമാൻഡുകൾ പ്രവർത്തിപ്പിക്കുക

Linux-ന് ടൈംഔട്ട് എന്ന് വിളിക്കുന്ന ഒരു കമാൻഡ്-ലൈൻ യൂട്ടിലിറ്റി ഉണ്ട്, ഇത് സമയപരിധിയുള്ള ഒരു കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യാൻ നിങ്ങളെ പ്രാപ്തമാക്കുന്നു.

അതിന്റെ വാക്യഘടന ഇപ്രകാരമാണ്.

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

കമാൻഡ് ഉപയോഗിക്കുന്നതിന്, നിങ്ങൾ പ്രവർത്തിപ്പിക്കേണ്ട കമാൻഡിനൊപ്പം ഒരു കാലഹരണപ്പെടൽ മൂല്യം (സെക്കൻഡിൽ) വ്യക്തമാക്കുക. ഉദാഹരണത്തിന്, 5 സെക്കൻഡിന് ശേഷം ഒരു പിംഗ് കമാൻഡ് കാലഹരണപ്പെടുന്നതിന്, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കാൻ കഴിയും.

# timeout 5s ping google.com

നമ്പർ 5-ന് ശേഷമുള്ള (കൾ) നിങ്ങൾ വ്യക്തമാക്കേണ്ടതില്ല. താഴെയുള്ള കമാൻഡ് സമാനമാണ്, അത് തുടർന്നും പ്രവർത്തിക്കും.

# timeout 5 ping google.com

മറ്റ് പ്രത്യയങ്ങളിൽ ഉൾപ്പെടുന്നു:

  • m മിനിറ്റുകളെ പ്രതിനിധീകരിക്കുന്നു
  • h മണിക്കൂറുകളെ പ്രതിനിധീകരിക്കുന്നു
  • d ദിവസങ്ങളെ പ്രതിനിധീകരിക്കുന്നു

ചില സമയങ്ങളിൽ പ്രാരംഭ സിഗ്നൽ അയച്ച് കാലഹരണപ്പെട്ടതിന് ശേഷവും കമാൻഡുകൾ തുടർന്നും പ്രവർത്തിക്കാം. അത്തരം സന്ദർഭങ്ങളിൽ, നിങ്ങൾക്ക് --kill-after ഓപ്ഷൻ ഉപയോഗിക്കാം.

വാക്യഘടന ഇതാ.

-k, --kill-after=DURATION

എത്ര സമയത്തിനുശേഷം കിൽ സിഗ്നൽ അയയ്uക്കണമെന്ന് സമയപരിധി അറിയിക്കുന്നതിന് നിങ്ങൾ ഒരു ദൈർഘ്യം വ്യക്തമാക്കേണ്ടതുണ്ട്.

ഉദാഹരണത്തിന്, കാണിച്ചിരിക്കുന്ന കമാൻഡ് 8 സെക്കൻഡിന് ശേഷം അവസാനിപ്പിക്കാൻ പോകുന്നു.

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

ടൈംലിമിറ്റ് പ്രോഗ്രാം തന്നിരിക്കുന്ന ഒരു കമാൻഡ് പ്രവർത്തിപ്പിക്കുകയും ഒരു നിശ്ചിത സമയത്തിന് ശേഷം നൽകിയിരിക്കുന്ന സിഗ്നൽ ഉപയോഗിച്ച് പ്രക്രിയ അവസാനിപ്പിക്കുകയും ചെയ്യുന്നു. ഇത് തുടക്കത്തിൽ ഒരു മുന്നറിയിപ്പ് സിഗ്നൽ കടന്നുപോകുന്നു, തുടർന്ന് ഒരു സമയപരിധിക്ക് ശേഷം, അത് കൊല്ലാനുള്ള സിഗ്നൽ അയയ്ക്കുന്നു.

ടൈംഔട്ട് ഓപ്uഷനിൽ നിന്ന് വ്യത്യസ്തമായി, ടൈംലിമിറ്റിന് കിൽസിഗ്, വാർൺസിഗ്, കിൽടൈം, വാർൺടൈം എന്നിങ്ങനെയുള്ള കൂടുതൽ ഓപ്ഷനുകൾ ഉണ്ട്.

ഡെബിയൻ അധിഷ്ഠിത സിസ്റ്റങ്ങളുടെ റിപ്പോസിറ്ററികളിൽ ടൈംലിമിറ്റ് കണ്ടെത്താം, അത് ഇൻസ്റ്റാൾ ചെയ്യാൻ താഴെ പറയുന്ന കമാൻഡ് ഉപയോഗിക്കുക.

$ sudo apt install timelimit

ആർച്ച് അധിഷ്uഠിത സിസ്റ്റങ്ങൾക്കായി, നിങ്ങൾക്ക് AUR സഹായ പ്രോഗ്രാമുകൾ ഉപയോഗിച്ച് ഇത് ഇൻസ്റ്റാൾ ചെയ്യാം ഉദാ. Pacaur Pacman, Packer.

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

മറ്റ് ലിനക്സ് വിതരണങ്ങൾ, നിങ്ങൾക്ക് സമയപരിധി ഉറവിടം ഡൗൺലോഡ് ചെയ്ത് സ്വമേധയാ ഇൻസ്റ്റാൾ ചെയ്യാം.

ഇൻസ്റ്റാളേഷന് ശേഷം, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിച്ച് സമയം വ്യക്തമാക്കുക. ഈ ഉദാഹരണത്തിൽ, നിങ്ങൾക്ക് 10 സെക്കൻഡ് ഉപയോഗിക്കാം.

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

നിങ്ങൾ ആർഗ്യുമെന്റുകൾ വ്യക്തമാക്കിയിട്ടില്ലെങ്കിൽ, ടൈംലിമിറ്റ് ഡിഫോൾട്ട് മൂല്യങ്ങൾ ഉപയോഗിക്കുന്നു: warntime=3600 seconds, warnsig=15, killtime=120, killsig=9.

ഈ ഗൈഡിൽ, Linux-ൽ സമയപരിധിയുള്ള കമാൻഡുകൾ എങ്ങനെ പ്രവർത്തിപ്പിക്കാമെന്ന് നിങ്ങൾ പഠിച്ചു. അവലോകനത്തിൽ, നിങ്ങൾക്ക് ടൈംഔട്ട് കമാൻഡ് അല്ലെങ്കിൽ ടൈംലിമിറ്റ് യൂട്ടിലിറ്റി ഉപയോഗിക്കാം.

ടൈംഔട്ട് കമാൻഡ് ഉപയോഗിക്കാൻ എളുപ്പമാണ്, എന്നാൽ ടൈംലിമിറ്റ് യൂട്ടിലിറ്റി അൽപ്പം സങ്കീർണ്ണമാണെങ്കിലും കൂടുതൽ ഓപ്ഷനുകൾ ഉണ്ട്. നിങ്ങളുടെ ആവശ്യങ്ങൾക്കനുസരിച്ച് നിങ്ങൾക്ക് ഏറ്റവും അനുയോജ്യമായ ഓപ്ഷൻ തിരഞ്ഞെടുക്കാം.