ലിനക്സിൽ ഒരു കമാൻഡ് ഒന്നിലധികം തവണ എങ്ങനെ പ്രവർത്തിപ്പിക്കാം


ഒരു കാരണത്താലോ മറ്റേതെങ്കിലും കാരണത്താലോ, Linux-ൽ ഒരു കമാൻഡ് പല പ്രാവശ്യം ആവർത്തിച്ച് പ്രവർത്തിപ്പിക്കാൻ നിങ്ങൾ ആഗ്രഹിച്ചേക്കാം. അത് നേടുന്നതിനുള്ള പൊതുവായതും ഫലപ്രദവുമായ ചില വഴികൾ ഈ ഗൈഡ് ചർച്ച ചെയ്യും. ആദ്യ രീതി നമുക്ക് പരിഗണിക്കാം.

ഓരോ x സെക്കൻഡിലും കമാൻഡിന് ശേഷം ഒരു കമാൻഡ് പ്രവർത്തിപ്പിക്കാനാണ് നിങ്ങൾ ഉദ്ദേശിക്കുന്നതെങ്കിൽ, നിങ്ങൾക്ക് പരിശോധിക്കാം - ഓരോ X സെക്കൻഡിലും ഒരു Linux കമാൻഡ് എങ്ങനെ പ്രവർത്തിപ്പിക്കാം അല്ലെങ്കിൽ ആവർത്തിക്കാം

ഒരു ബാഷ് ഫോർ ലൂപ്പ് ഉപയോഗിച്ച് ലിനക്സിൽ ഒന്നിലധികം തവണ കമാൻഡ് പ്രവർത്തിപ്പിക്കുക

ബാഷ് ഷെല്ലിൽ ഒരു കമാൻഡ് ആവർത്തിക്കാനുള്ള എളുപ്പവഴി അത് ഒരു ലൂപ്പിനായി പ്രവർത്തിപ്പിക്കുക എന്നതാണ്. നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന വാക്യഘടന ഉപയോഗിക്കാം, ഇവിടെ ഒരു കൌണ്ടർ ഒരു വേരിയബിളാണ് (നിങ്ങൾക്കതിന് i അല്ലെങ്കിൽ x പോലുള്ള നിങ്ങളുടെ ചോയിസുകളുടെ പേര് നൽകാം.) കൂടാതെ n എന്നത് കമാൻഡ് എത്ര തവണ പ്രവർത്തിപ്പിക്കണമെന്ന് നിങ്ങൾ ആഗ്രഹിക്കുന്നതിനെ പ്രതിനിധീകരിക്കുന്നതിനുള്ള ഒരു പോസിറ്റീവ് സംഖ്യയാണ്:

for counter in {1..n}; do yourCommand_here; done

ഇതാ ഒരു ഉദാഹരണം:

$ for x in {1..10}; do echo "linux-console.net - The #1 Linux blog $x"; done

അൽപ്പസമയം ലൂപ്പ് ഉപയോഗിച്ച് ലിനക്സിൽ ഒന്നിലധികം തവണ കമാൻഡ് പ്രവർത്തിപ്പിക്കുക

മുമ്പത്തെ രീതിയുമായി ബന്ധപ്പെട്ട്, ഇനിപ്പറയുന്ന വാക്യഘടന ഉപയോഗിച്ച് ലിനക്സിൽ പലതവണ കമാൻഡ് പ്രവർത്തിപ്പിക്കുന്നതിന് a while ലൂപ്പ് ഉപയോഗിക്കാം:

$ i=1; while [ $i -le n ]; do yourCommand_here; i=$(($i++)); done
OR
$ i=1; while [ $i -le n ]; do yourCommand_here; ((i++)); done

മുകളിലെ ഫോർമാറ്റിൽ, i പ്രതിനിധീകരിക്കുന്നത് കൌണ്ടർ വേരിയബിളാണ്, [ $i -le n ] എന്നത് ടെസ്റ്റ് അവസ്ഥയാണ്, കൂടാതെ n എന്നത് നിങ്ങൾ കമാൻഡ് പ്രവർത്തിപ്പിക്കാൻ ആഗ്രഹിക്കുന്നതിന്റെ എണ്ണമാണ് (ലൂപ്പിലൂടെ ഷെൽ എത്ര തവണ ആവർത്തിക്കും.

while ലൂപ്പിന്റെ മറ്റൊരു പ്രധാന ഭാഗം i=$ (($i+1)) അല്ലെങ്കിൽ (($i++)) ആണ്, ഇത് ടെസ്റ്റ് അവസ്ഥ തെറ്റാകുന്നത് വരെ കൗണ്ടറിനെ വർദ്ധിപ്പിക്കുന്നു.

അതിനാൽ നിങ്ങളുടെ കമാൻഡ് ഇതുപോലെ പല പ്രാവശ്യം പ്രവർത്തിപ്പിക്കാം (കമാൻഡ് എത്ര തവണ ആവർത്തിക്കണമെന്ന് നിങ്ങൾ ആഗ്രഹിക്കുന്നത് 10 മാറ്റിസ്ഥാപിക്കുക):

$ i=1; while [ $i -le 10 ]; do echo "linux-console.net - The #1 Linux blog $i";((i++)); done

seq കമാൻഡ് ഉപയോഗിച്ച് ഒരു കമാൻഡ് ഒന്നിലധികം തവണ പ്രവർത്തിപ്പിക്കുക

ലിനക്സിൽ ഒരു കമാൻഡ് നിരവധി തവണ പ്രവർത്തിപ്പിക്കുന്നതിനുള്ള മൂന്നാമത്തെ മാർഗ്ഗം, ഈ ഫോമിലെ xargs കമാൻഡുമായി സംയോജിച്ച് സംഖ്യകളുടെ ക്രമം ക്രമാനുഗതമായി പ്രിന്റ് ചെയ്യുന്ന seq കമാൻഡ് ഉപയോഗിച്ചാണ്:

$ seq 5 | xargs -I -- echo "linux-console.net - The #1 Linux blog"

ഓരോ കമാൻഡിന്റെയും അവസാനം എണ്ണം ചേർക്കുന്നതിന്, ഈ വാക്യഘടന ഉപയോഗിക്കുക:

$ seq 5 | xargs -n 1 echo "linux-console.net - The #1 Linux blog"

കൂടാതെ, ഈ അനുബന്ധ ലേഖനങ്ങളും പരിശോധിക്കുക:

  • ഒന്നിലധികം ലിനക്സ് സെർവറുകളിൽ കമാൻഡുകൾ പ്രവർത്തിപ്പിക്കുന്നതിനുള്ള 4 ഉപയോഗപ്രദമായ ഉപകരണങ്ങൾ
  • ലോഗ് ഫയലുകൾ തത്സമയം കാണാനും നിരീക്ഷിക്കാനും 4 വഴികൾ
  • MultiTail - ഒറ്റ ലിനക്സ് ടെർമിനലിൽ ഒന്നിലധികം ഫയലുകൾ ഒരേസമയം നിരീക്ഷിക്കുക

ഇപ്പോഴത്തേക്ക് ഇത്രമാത്രം. Linux-ൽ ഒരു കമാൻഡ് ഒന്നിലധികം തവണ പ്രവർത്തിപ്പിക്കുന്നതിനുള്ള മറ്റ് രീതികൾ നിങ്ങൾക്കറിയാമെങ്കിൽ, ചുവടെയുള്ള അഭിപ്രായ വിഭാഗത്തിൽ ഞങ്ങളെ അറിയിക്കുക.