Ash - ലിനക്സ് ആജ്ഞ - യുണിക്സ് കമാൻഡ്

NAME

sh - കമാണ്ട് ഇന്റർപ്രെറ്റർ ( ഷെൽ )

സിനോപ്സിസ്

sh [- / + aCefnuvxIimqsVEbc ] [- - നീണ്ട പേര് ] -words [ ലക്ഷ്യം ... ]

വിവരണം

സിസ്റ്റത്തിനുള്ള സാധാരണ കമാൻഡ് ഇന്റർപ്രറ്റർ ആണു്. ഷെല്ലിനുള്ള POSIX 1003.2, 1003.2a സ്പെസിഫിക്കേഷനുകൾക്ക് അനുസൃതമായി മാറുന്ന പ്രക്രിയയാണ് sh ന്റെ നിലവിലുള്ള പതിപ്പ്. ചില പതിപ്പുകളിൽ ഇത് സമാനമായ രീതിയിൽ കോർണൽ ഷെല്ലിന് സമാനമായതാക്കുന്നു, പക്ഷേ ഇത് കോർഷ് ഷെൽ ക്ലോൺ അല്ല (ksh (1) കാണുക). POSIX , ഏതാനും ബെർക്ക്ലി എക്സ്റ്റൻഷനുകൾ എന്നിവയിൽ മാത്രം നൽകിയിരിക്കുന്ന സവിശേഷതകൾ മാത്രം ഈ ഷെല്ലിലേക്ക് സംയോജിപ്പിച്ചിരിക്കുന്നു. സമയം 4.4 BSD പുറത്തിറങ്ങി POSIX കൺഫോമൻസ് ഞങ്ങൾ പ്രതീക്ഷിക്കുന്നു. ഈ മാൻ താൾ ഒരു ട്യൂട്ടോറിയൽ അല്ലെങ്കിൽ ഷെല്ലിന്റെ പൂർണ്ണമായ വിവരണം ആയിരിക്കില്ല.

അവലോകനം

ഷെൽ ഒരു കമാൻഡ് ആണ് അല്ലെങ്കിൽ ഒരു ഫയൽ അല്ലെങ്കിൽ ടെർമിനൽ നിന്ന് വരികൾ വായിക്കുന്നു, അവ വ്യാഖ്യാനിക്കുന്നു, കൂടാതെ സാധാരണയായി മറ്റ് കമാൻഡുകൾ എക്സിക്യൂട്ട് ചെയ്യുന്നു. ഒരു ഉപയോക്താവു് സിസ്റ്റത്തിൽ പ്രവേശിയ്ക്കുമ്പോൾ പ്രവർത്തിയ്ക്കുന്ന പ്രോഗ്രാമാണു് (ഒരു ഉപയോക്താവിനു് chsh (1) ആജ്ഞ ഉപയോഗിച്ചു് വേറൊരു ഷെൽ തെരഞ്ഞെടുക്കാം). ഷെൽ നിയന്ത്രണ സംവിധാനങ്ങൾ, ഭാഷാ സംഭരണത്തിനു പുറമേ വിവിധ സവിശേഷതകൾ ലഭ്യമാക്കുന്ന ഒരു മാക്രോ സൗകര്യം, ചരിത്രം, ലൈൻ എഡിറ്റിംഗ് ശേഷികൾ എന്നിവ ഉൾക്കൊള്ളുന്ന ഒരു ഭാഷ സംവിധാനം ചെയ്യുന്നു. ഇന്ററാക്ടീവ് ഉപയോഗത്തിനായി അനേകം സവിശേഷതകൾ ഉൾക്കൊള്ളുന്നു. ഇന്ററാക്ടീവ് ഭാഷ സംവേദനാത്മകവും നോൺ-ഇൻററാക്റ്റീവ് ഉപയോഗത്തിനും (ഷെൽ സ്ക്രിപ്റ്റുകൾ) സാധാരണമാണ്. അതായത് കമാന്ഡുകളെ നേരിട്ട് റണ്ണിംഗ് ഷെല്ലിലേക്ക് നേരിട്ട് ടൈപ്പുചെയ്യാം അല്ലെങ്കിൽ ഒരു ഫയലിൽ ഇടുകയും ഷെൽ നേരിട്ട് ഫയൽ നടപ്പിലാക്കുകയും ചെയ്യും.

വിദ്വേഷം

ആർഗ്യുമെന്റുകളൊന്നും ഇല്ലെങ്കിൽ ഷെല്ലിന്റെ സ്റ്റാൻഡേർഡ് ഇൻപുട്ട് ഒരു ടെര്മിനലിലേക്ക് (അല്ലെങ്കിൽ - - i ഫ്ലാഗ് സജ്ജമാക്കിയാൽ) കണക്ട് ചെയ്തിട്ടുണ്ടെങ്കിൽ, കൂടാതെ - c ഐച്ഛികം ലഭ്യമല്ല, ഷെൽ ഒരു ഇന്ററാക്ടീവ് ഷെൽ ആയി കണക്കാക്കുന്നു. ഒരു ഇന്ററാക്ടീവ് ഷെൽ സാധാരണയായി ഓരോ കമാന്ഡിനു് മുമ്പും പ്രോംപ്റ്റ് ചെയ്യുന്നു, കൂടാതെ പ്രോഗ്രാമിങ്, കമാൻഡ് പിശകുകൾ വ്യത്യാസമില്ലാതെ (താഴെ വിവരിച്ചിരിക്കുന്നത് പോലെ) കൈകാര്യം ചെയ്യുന്നു. ആദ്യം തുടങ്ങുമ്പോൾ ഷെൽ ആർഗ്യുമെന്റ് 0 പരിശോധിക്കുന്നു, അത് ഡാഷ് ഉപയോഗിച്ച് ആരംഭിക്കുകയാണെങ്കിൽ 'ഷെൽ ഒരു ഷെൽ ലോഗും കൂടിയാണ്. ഉപയോക്താവ് ആദ്യം പ്രവേശിക്കുന്പോൾ ഇത് സ്വയമായി സ്വതവേ നടത്തുന്നു. ഒരു ലോഗിന് ഷെല് ആദ്യം ഫയലുകള് / etc / profile ല് നിന്ന് കമാന്ഡുകള് റീഡ് ചെയ്യുന്നു. എൻവയോൺ വേരിയബിള് എന്വയോണ് ഷെല്ലിലേക്കു് എന്ട്രി ആയി സജ്ജമാക്കിയാല്, അല്ലെങ്കില് ഒരു ലോഗിന് ഷെല്ലിന്റെ .profile ല് സെറ്റ് ചെയ്തിട്ടുണ്ടെങ്കില്, ഷെല് ENV എന്ന പേരിലുള്ള ഫയലില് നിന്നും അടുത്ത കമാന്ഡ് റീഡ് ചെയ്യുന്നു. അതുകൊണ്ട്, ഒരു ഉപഭോക്താവ് എക്സിക്യൂട്ട് ചെയ്യുവാനുള്ള ENV ഫയലിനുള്ളിൽ ഓരോ ഷെല്ലിനും എക്സിക്യൂട്ട് ചെയ്യുന്ന. എന്വിവി വേരിയബിള് ചില ഫയലിലേക്കു് സജ്ജമാക്കുന്നതിനായി, നിങ്ങളുടെ ഹോം ഡയറക്ടറിയിലുള്ള നിങ്ങളുടെ വരിയില് താഴെ പറഞ്ഞിരിക്കുന്ന വരി നല്കുക

ENV = $ ഹോം / .ഷീനത്; ENV എക്സ്പോർട്ടുചെയ്യുക

'ഷിനീത്ത്' 'താങ്കൾ ആവശ്യപ്പെടുന്ന ഏതെങ്കിലും ഫയൽനാമം . ഷെൽ സ്ക്രിപ്റ്റുകൾ, നോൺ-ഇന്ററാക്ടീവ് ഷെല്ലുകൾ എന്നിവയുൾപ്പെടെ ഷെല്ലിന്റെ എല്ലാ നിർദ്ദേശങ്ങൾക്കും എൻ.വി.വി ഫയൽ വായിച്ചതിനാൽ, ENV ഫയലിൽ കമാൻഡുകൾ പരിമിതപ്പെടുത്താൻ ഇൻട്രാക്റ്റീവ് ഇൻവോക്കേഷനുകളിലേക്ക് പരിപാടി സഹായിക്കുന്നു. `` കേസ് '' കൂടാതെ `` എസ്കക് '' എന്നീ വിഭാഗങ്ങളിലുമുള്ള കമാൻഡിംഗ്സ് (ഈ നിർദ്ദേശങ്ങൾ പിന്നീട് വിവരിക്കുന്നു):

കേസ് $ - ൽ * i *)

# ഇന്ററാക്ടീവ് ഉപയോഗത്തിനുളള കമാൻഡുകൾ മാത്രം

...

esac

ഓപ്ഷനുകൾ മാത്രം ഉപയോഗിച്ചു് കമാൻഡ് ലൈൻ ആർഗ്യുമെന്റുകൾ നൽകിയിട്ടുണ്ടെങ്കിൽ ഷെൽ കമാൻഡുകൾ (ഒരു ഷെൽ സ്ക്രിപ്റ്റ്) വായിക്കുന്നതിനുള്ള ഫയലിന്റെ പേരാണ് ആദ്യത്തെ ആർഗ്യുമെന്റാണെന്നും ബാക്കിയുള്ള ആർഗ്യുമെന്റുകൾ shell ന്റെ സ്ഥാനപൊരു പരാമീറ്ററുകളായി സജ്ജമാക്കുകയും ചെയ്യുന്നു ($ 1 , $ 2 തുടങ്ങിയവ). അല്ലെങ്കിൽ, ഷെൽ അതിന്റെ സ്റ്റാൻഡേർഡ് ഇൻപുട്ടിൽ നിന്നും കമാൻഡുകൾ റീഡ് ചെയ്യുന്നു.

ആർഗ്യുമെന്റ് ലിസ്റ്റിംഗ് പ്രൊസസ്സിംഗ്

ഒരൊറ്റ ലെറ്റർ ഓപ്ഷനുകൾക്ക് ഒരു ഒബ്ജക്ടായി ഉപയോഗിക്കാവുന്ന അനുയോജ്യമായ പേര് ഉണ്ട് - o ഓപ്ഷൻ. സെറ്റ്- പേര് ചുവടെയുള്ള വിവരണത്തിലെ ഒറ്റ കത്ത് ഓപ്റ്റിന് അടുത്താണ് നൽകുന്നത്. ഒരു ഡാഷ് വ്യക്തമാക്കുന്നത് `- '' ഓപ്ഷൻ മാറുന്നു, ഒപ്പം ഒരു പ്ലസ്` `+" ഉപയോഗിക്കുമ്പോൾ ഓപ്ഷൻ പ്രവർത്തനരഹിതമാക്കുന്നു. താഴെ പറയുന്ന ഉപാധികൾ കമാൻഡ് ലൈനിൽ നിന്നും അല്ലെങ്കിൽ സെറ്റ് (1) ബിറ്റ്നിൻ (പിന്നീട് വിവരിച്ചിരിക്കുന്നു) ഉപയോഗിച്ചു് സജ്ജമാക്കാം.

-അലെക്സ്പോർട്ട്

നിയോഗിച്ചിട്ടുള്ള എല്ലാ വേരിയബിഷനുകളും എക്സ്പോർട്ട് ചെയ്യുക. (4.4alpha- യ്ക്ക് UNIMPLEENTED)

-c

കമാൻഡ് ലൈനിൽ നിന്നും കമാൻഡുകൾ റീഡുചെയ്യുക. സ്റ്റാൻഡേർഡ് ഇൻപുട്ടിൽ നിന്ന് കമാൻഡുകൾ ഒന്നും വായിക്കുന്നതല്ല.

-C noclobber

നിലവിലുള്ള ഫയലുകളെ തിരുത്തിയെഴുതരുത് '`' '' (4.4alpha for UNIMPLEENTED)

-ഒരു തെറ്റാണ്

ഇന്ററാക്ടീവ് അല്ലെങ്കിൽ, ഏതെങ്കിലും പരീക്ഷിക്കപ്പെട്ട ആജ്ഞ പരാജയപ്പെട്ടാൽ ഉടൻ പുറത്തു് കടക്കുക. `` && '' അല്ലെങ്കിൽ '`||' 'ഓപ്പറേറ്റർ ഇടതു കൈകൊണ്ടുള്ള ആജ്ഞയാണെങ്കിലോ അല്ലെങ്കിൽ / അല്ലെങ്കിൽ കാലാവധി തീരുന്ന സമയത്തുണ്ടോ എന്നു പരിശോധിക്കുകയാണെങ്കിൽ കമാൻഡ് ഉപയോഗിക്കുന്നതിന്റെ കമാൻഡ് എക്സിറ്റ് സ്റ്റാറ്റസ് സ്പഷ്ടമായി പരീക്ഷിക്കപ്പെടും.

-f noglob

Pathname എക്സ്പാൻഷൻ പ്രവർത്തന രഹിതമാക്കുക.

-n noexec

ഇന്ററാക്ടീവ് അല്ലെങ്കിൽ, കമാൻഡുകൾ റീഡുചെയ്യുക, പക്ഷേ അവ നടപ്പിലാക്കരുത്. ഷെൽ സ്ക്രിപ്റ്റുകൾക്കുള്ള സിന്റാക്സ് പരിശോധിക്കുന്നതിനായി ഇതു് സഹായിക്കുന്നു.

-U നാമംഭരണം

സെറ്റ് ചെയ്യാത്ത ഒരു വേരിയബിള് വിപുലീകരിക്കാന് ശ്രമിക്കുന്നതില് സാധാരണ സന്ദേശത്തില് ഒരു സന്ദേശം എഴുതുക, ഷെല് ഇന്ററാക്ടീവ് അല്ലെങ്കില് ഉടനടി പുറത്തുകടക്കുക. (4.4alpha- യ്ക്ക് UNIMPLEENTED)

-v verbose

ഷെൽ അതിന്റെ ഇൻപുട്ട് സ്റ്റാൻഡേർഡ് പിശക് രേഖപ്പെടുത്തുന്നതു പോലെ എഴുതുന്നു. ഡീബഗ്ഗിംഗിന് ഉപയോഗപ്രദമാണ്.

-x xtrace

ഓരോ കമാന്ഡിനും സ്റ്റാൻഡേർഡ് എറർ എഴുതുക (മുൻപ് '+' അത് നടപ്പിലാക്കുന്നതിനു മുൻപ് ഡീബഗ്ഗിങിന് പ്രയോജനകരമാണ്.

-q ശബ്ദരഹിത ഫയൽ

- അല്ലെങ്കില് v അല്ലെങ്കില് - x ഐച്ഛികങ്ങള് സജ്ജമാക്കിയാല്, ഇനീഷ്യലൈസേഷന് ഫയലുകള് വായിക്കുമ്പോള് അവ ബാധകമാക്കരുതു്, ഇങ്ങനെയാണു് / etc / profile .പ്രൊഫൈലിനും ENV എന്വയോണ്മെന്റ് വേരിയബിള് വ്യക്തമാക്കിയ ഫയലും.

- ഞാൻ അവഗണിക്കുന്നു

ഇന്ററാക്ടീവ് സമയത്ത് ഇൻപുട്ടിൽ നിന്ന് EOF- കൾ അവഗണിക്കുക.

-i ഇന്ററാക്ടീവ്

ഇടപെടൽ നടത്താൻ ഷെൽ നിർബന്ധിക്കുക.

-m മോണിറ്റർ

ജോലി നിയന്ത്രണം ഓണാക്കുക (ഇന്ററാക്ടീവ് ആയി യാന്ത്രികമായി സജ്ജമാക്കുക).

-s stdin

സാധാരണ ഇൻപുട്ടിൽ നിന്നുള്ള കമാൻഡുകൾ വായിക്കുക (ഫയൽ ആർഗ്യുമെന്റുകളൊന്നും ഇല്ലെങ്കിൽ യാന്ത്രികമായി സജ്ജമാക്കാം). ഷെൽ പ്രവർത്തിച്ചതിനു ശേഷം സെറ്റ് (അതായത് സെറ്റ് (1)) സെറ്റ് ചെയ്യുമ്പോൾ ഈ ഓപ്ഷൻ ബാധകമാകില്ല.

-വി vi

അന്തർനിർമ്മിത vi (1) കമാൻഡ് ലൈൻ എഡിറ്റർ (അപ്രാപ്തമാക്കുക - ഇറ്റ് സജ്ജീകരിച്ചിട്ടുണ്ടെങ്കിൽ) പ്രാപ്തമാക്കുക.

-E emacs

അന്തർനിർമ്മിത emacs (1) കമാൻഡ് ലൈൻ എഡിറ്റർ (അപ്രാപ്തമാക്കുക- വി സജ്ജമാക്കിയെങ്കിൽ) പ്രാപ്തമാക്കുക.

-b അറിയിക്കുക

പശ്ചാത്തല ജോലിയുടെ പൂർത്തിയാക്കൽ അസമന്വിത അറിയിപ്പ് പ്രവർത്തനക്ഷമമാക്കുക. (4.4alpha- യ്ക്ക് UNIMPLEENTED)

ലെക്സിക്കൽ ഘടന

ഒരു ഫയലിൽ നിന്നുള്ള വരികളിലെ ഷെൽ ഇൻപുട്ട് വായിക്കുകയും, വൈറ്റ്സ്പെയ്സ് (ബ്ലോക്കുകളും ടാബുകളും) ലെ വാക്കുകളായി അതിനെ വേർതിരിക്കുകയും 'ഓപ്പറേറ്റർമാർ' എന്ന് വിളിക്കപ്പെടുന്ന ഷെല്ലിന് പ്രത്യേകമായുള്ള പ്രത്യേക ചിഹ്നങ്ങളിൽ രണ്ട് രീതിയിലുള്ള ഓപ്പറേറ്റർമാർ ഉണ്ട്: കൺട്രോൾ ഓപ്പറേറ്റർമാർ, റീഡയറക്ഷൻ ഓപ്പറേറ്റർമാർ (അവയുടെ അർത്ഥം പിന്നീട് ചർച്ച ചെയ്യപ്പെടും). ഓപ്പറേറ്ററുടെ ഒരു പട്ടിക താഴെപറയുന്നു:

"നിയന്ത്രണ ഓപ്പറേറ്റർമാർ:"

& && (); ;;; | ||

"റീഡയറക്ഷൻ ഓപ്പറേറ്റർ:"

<>> | << >> <&> & << - <>

ഉദ്ധരണി

ഓപ്പറേറ്റർമാർ, വൈറ്റ്സ്പെയ്സ് അല്ലെങ്കിൽ കീവേഡുകൾ പോലുള്ള ചില പ്രതീകങ്ങൾ അല്ലെങ്കിൽ പദങ്ങളുടെ പ്രത്യേക അർത്ഥം നീക്കം ചെയ്യാൻ ഉദ്ധരിക്കുക ഉപയോഗിക്കുന്നു. മൂന്ന് തരത്തിലുള്ള ഉദ്ധരണികൾ ഉണ്ട്: സിംഗിൾ ഉദ്ധരണികൾ പൊരുത്തപ്പെടുന്നു, പൊരുത്തമുള്ള ഇരട്ട ഉദ്ധരണികൾ, ബാക്ക്സ്ലാഷ്.

ബാക്ക്സ്ലാഷ്

അക് ന്യൂ ലൈന് ഒഴികെ, ഒരു ബാക്ക്സ്ലാഷ് താഴെപ്പറയുന്ന അക്ഷരങ്ങളുടെ അക്ഷരാർത്ഥത്തിലുള്ള അർത്ഥം സൂക്ഷിക്കുന്നു. ഒരു അക് ന്യൂ ലൈനിന് മുമ്പുള്ള ഒരു ബിൽഡ്ലാഷ് ലൈൻ തുടർച്ചയായി കണക്കാക്കപ്പെടുന്നു.

സിംഗിൾ ഉദ്ധരണികൾ

ഒരൊറ്റ ഉദ്ധരണികളിൽ പ്രതീകങ്ങളടങ്ങിയ പ്രതീകങ്ങൾ എല്ലാ പ്രതീകങ്ങളുടേയും അക്ഷരീയ അർഥം നിലനിർത്തുന്നു (സിംഗിൾ ഉദ്ധരണികൾ ഒഴികെ, സിംഗിൾ-ഉദ്ധരണികൾ ഒരൊറ്റ ഉദ്ധരണത്തിൽ നൽകാനാവില്ല).

ഇരട്ട ഉദ്ധരണികൾ

ഇരട്ട ഉദ്ധരണികൾക്കുള്ളിൽ പ്രതീകങ്ങൾ അടക്കുന്നു ഡോൾസേർഡ് ($) backquote (`) ബാക്കറ്റ് (`) കൂടാതെ ബക്സ് ലാഷ് (\) ഒഴികെയുള്ള എല്ലാ പ്രതീകങ്ങളുടേയും അക്ഷരാർത്ഥത്തിലുള്ള അർഥം സംരക്ഷിക്കുന്നു. ഇരട്ട ഉദ്ധരണികൾക്കുള്ളിലെ ബാക്കപ്പ് ചരിത്രപരമായി വിചിത്രമായിരിക്കുന്നു,

$ `\

അല്ലെങ്കിൽ അത് അക്ഷരാർഥത്തിൽ തുടരുന്നു.

റിസർവ്ഡ് വേഡ്സ്

നിയന്ത്രിത പദങ്ങൾ ഷെല്ലിന് പ്രത്യേക അർഥമുള്ള വാക്കുകൾ, ഒരു വരിയുടെ തുടക്കത്തിലും കൺട്രോൾ ഓപ്പറേറ്ററിനു ശേഷവും തിരിച്ചറിയാം. ഇനിപ്പറയുന്ന വാക്കുകൾ റിസർവ് ചെയ്ത പദങ്ങളാണ്:

! Ta elif Ta ഫൈ Ta സമയത്ത് ടാ കേസിൽ

മറ്റൊന്ന് തായി തഹ് പിന്നെ തൻ

ഡാ തെയ്ൻ ദാ തെൻ esac വരെ

അവരുടെ അർത്ഥം പിന്നീട് ചർച്ച ചെയ്യപ്പെടുന്നു.

അപരനാമങ്ങൾ

അപരനാമം (1) ബിൽമിൻ കമാൻഡ് ഉപയോഗിച്ച് സജ്ജീകരിച്ചിരിക്കുന്ന ഒരു പേരും അനുബന്ധ മൂല്യവും ആണ്. റിസർവ് ചെയ്ത പദങ്ങൾ സംഭവിക്കുമ്പോഴെല്ലാം (മുകളിലുള്ളത് കാണുക), റിസേർട്ട് ചെയ്ത വാക്കുകൾക്കായി പരിശോധിച്ച ശേഷം ഷെൽ ഒരു അപരനാമത്തിൽ പൊരുത്തപ്പെടുന്നുണ്ടോ എന്ന് കാണുന്നതിനായി വാക്ക് പരിശോധിക്കുന്നു. അങ്ങനെ ചെയ്താൽ, അതിനെ അതിന്റെ ഇൻപുട്ട് സ്ട്രീമിൽ മാറ്റിസ്ഥാപിക്കും. ഉദാഹരണത്തിന്, `` ls -F '' മൂല്യമുള്ള `` lf '' എന്ന വിളിപ്പേര് ഉണ്ടെങ്കിൽ, ഇൻപുട്ട്:

lf foobar

ആകും

ls-F foobar

ആർഗ്യുമെന്റുകൾ ഉപയോഗിച്ച് ഫംഗ്ഷനുകൾ സൃഷ്ടിക്കുന്നതെങ്ങനെ എന്ന് അറിയാതെ കമാൻഡുകളുടെ ഹ്രസ്വചിത്രങ്ങൾ സൃഷ്ടിക്കാൻ അപരിമേയർ ഉപയോക്താക്കൾക്ക് ഒരു ഉചിതമായ മാർഗ്ഗം നൽകും. Lexically നിഗൂഢമായ കോഡ് സൃഷ്ടിക്കാൻ അവ ഉപയോഗിക്കുവാൻ കഴിയും. ഈ ഉപയോഗം നിരുൽസാഹപ്പെടുത്തുന്നു.

കമാൻഡുകൾ

ഒരു ഭാഷ അനുസരിച്ച് അത് വായിക്കുന്ന വാക്കുകളെ ഷെൽ വ്യാഖ്യനിക്കുന്നു. ഈ മാൻ പേജിന്റെ പരിധിക്കു പുറത്തുള്ള ( POSIX 1003.2 ഡോക്യുമെന്റിൽ BNF കാണുക) വ്യക്തമാക്കും. എന്നിരുന്നാലും, ഒരു ലൈൻ വായിക്കുകയും, വരിയുടെ ആദ്യ വാക്ക് (അല്ലെങ്കിൽ ഒരു കണ്ട്രോൾ ഓപ്പറേറ്റർക്ക് ശേഷം) ഒരു റിസർവ് ചെയ്ത പദമല്ലെങ്കിൽ, ഷെൽ ഒരു ലളിതമായ ആജ്ഞ തിരിച്ചറിയുന്നു. അല്ലെങ്കിൽ, സങ്കീർണമായ ആജ്ഞ അല്ലെങ്കിൽ മറ്റേതെങ്കിലും പ്രത്യേക നിർവ്വചനം അംഗീകരിക്കപ്പെട്ടിരിക്കാം.

ലളിതമായ ആജ്ഞകൾ

ഒരു ലളിതമായ കമാൻഡ് തിരിച്ചറിഞ്ഞാൽ, ഷെൽ താഴെപ്പറയുന്ന പ്രവർത്തനങ്ങൾ ചെയ്യുന്നു:

  1. `` പേര് = മൂല്യം '' എന്ന പദത്തിന്റെ മുഖ്യ പദങ്ങൾ ലളിതമായ ആജ്ഞയുടെ പരിതസ്ഥിതിയിൽ നിന്നും മാറ്റി നിർത്തിയിരിക്കുന്നു. റീഡയറക്ഷൻ ഓപ്പറേറററുകളും അവരുടെ ആർഗ്യുമെന്റുകളും (ചുവടെ വിശദമാക്കിയിരിക്കുന്നതുപോലെ) നീക്കംചെയ്യുകയും പ്രോസസ്സിംഗിനായി സംരക്ഷിക്കുകയും ചെയ്യുന്നു.
  2. ബാക്കി പദങ്ങൾ വിപുലീകരിക്കപ്പെടുന്നു, `` എക്സ്പാൻഷൻസ് '' എന്ന വിഭാഗത്തിൽ വിവരിച്ചിരിക്കുന്നതും ആദ്യ ബാക്കിയുള്ള പദവും കമാൻഡ് നെയിം എന്നാണ്, കമാൻഡ് സ്ഥിതിചെയ്യുന്നു. ബാക്കിയുള്ള പദങ്ങൾ കൽപ്പനയുടെ വാദങ്ങളാണ്. ഒരു കമാൻഡിന്റെ പേര് ഫലമൊന്നും ലഭിച്ചില്ലെങ്കിൽ, ഇനത്തെ 1 ൽ തിരിച്ചറിപ്പെടുത്തിയ `` മൂല്യം = '' വേരിയബിൾ അസൈൻമെന്റുകൾ നിലവിലുള്ള ഷെൽസിനെ ബാധിക്കുന്നു.
  3. അടുത്ത വിഭാഗത്തിൽ വിവരിച്ചിരിക്കുന്നതുപോലെ റിഡയറുകളാണ് നടത്തുന്നത്.

റിഡയറക്ഷൻസ്

ഒരു കമാൻഡ് അതിന്റെ ഇൻപുട്ട് റീഡ് ചെയ്യുമ്പോഴോ അതിൻറെ ഔട്ട്പുട്ട് അയക്കുന്ന സ്ഥലമോ മാറ്റുന്നതിനായി റീഡയറക്ടർ ഉപയോഗിക്കും. സാധാരണയായി, റീഡയറക്ടുകൾ ഒരു ഫയൽ തുറക്കുന്നതോ അടയ്ക്കുന്നതോ നിലവിലുള്ളതോ ആയ റഫറൻസുചെയ്യൽ തനിപ്പകർപ്പെടുക്കുന്നു. റീഡയറക്ഷൻ ഉപയോഗിക്കുന്ന മൊത്തത്തിലുള്ള ഫോർമാറ്റ്:

[n] redir-op ഫയൽ

ഇവിടെ, മുമ്പു സൂചിപ്പിച്ച റീഡയറക്ഷൻ ഓപ്പറേറ്റർമാരിൽ ഒന്നാണ് റൈവർ-ഒപ് . സാധ്യമായ റീഡയറക്ടുകളുടെ പട്ടിക ചുവടെയുണ്ട്. Bq n എന്നത് ഒരു ഓപ്ഷണൽ നമ്പറാണ്, '3' ൽ (ഒരു ബിക് 3 'അല്ല, അത് ഒരു ഫയൽ ഡിസ്ക്രിപ്റ്ററെ സൂചിപ്പിക്കുന്നു.

[n]> ഫയൽ

സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ട് (അല്ലെങ്കിൽ n) റീഡയറക്റ്റ് ചെയ്യുക.

[n]> | ഫയൽ

ഒരേ, എന്നാൽ സി- ഓപ്ഷൻ അസാധുവാക്കുക.

[n] >> ഫയൽ

ഫയൽ ഫോർമാറ്റിൽ സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ട് (അല്ലെങ്കിൽ എൻ) കൂട്ടിച്ചേർക്കുക.

[n] <ഫയൽ

ഫയൽ മുതൽ സ്റ്റാൻഡേർഡ് ഇൻപുട്ട് (അല്ലെങ്കിൽ n) റീഡയറക്റ്റ് ചെയ്യുക.

[n1] <& n2

ഫയൽ ഡിസ്ക്രിപ്റ്റർ n2 ൽ നിന്ന് സ്റ്റാൻഡേർഡ് ഇൻപുട്ടിന്റെ ഡ്യൂപ്ലിക്കേറ്റ് (അല്ലെങ്കിൽ n1).

[n] <& -

സ്റ്റാൻഡേർഡ് ഇൻപുട്ട് (അല്ലെങ്കിൽ n) അടയ്ക്കുക.

[n1]> & n2

N2 ൽ നിന്നും സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ട് ഡ്യൂപ്ലിക്കേറ്റ് (അല്ലെങ്കിൽ n1).

[n]> & -

സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ട് (അല്ലെങ്കിൽ n) അടയ്ക്കുക.

[n] <> ഫയൽ

സാധാരണ ഇൻപുട്ടിനെ (അല്ലെങ്കിൽ n) വായിച്ച് എഴുതുന്നതിനായി ഫയൽ തുറക്കുക.

താഴെക്കാണുന്ന റീഡയറക്ഷൻനെ `` ഇവിടെ-രേഖ '' എന്ന് വിളിക്കുന്നു.

[n] << ഡീലിമിറ്റർ

ഇവിടെ doc-text ...

ഡിലിമിറ്റർ

ഡീമിമിറ്റർ വരെയുള്ള തുടർച്ചയായ വരികളിലെ എല്ലാ ടെക്സ്റ്റുകളും സൂക്ഷിച്ചുവച്ചിട്ടുണ്ടോ, അത് സ്റ്റാൻഡേർഡ് ഇൻപുട്ടിലുള്ള ആജ്ഞയ്ക്ക് ലഭ്യമാകുമോ, അല്ലെങ്കിൽ അത് വ്യക്തമാക്കിയാൽ ഫയൽ ഡിസ്ക്രിപ്റ്റര് n ആകാം. പ്രാരംഭ വരിയിൽ വ്യക്തമാക്കിയിട്ടുളള ഡീമിമിറ്റർ സൂചിപ്പിച്ചെങ്കിൽ, ഇവിടെ ഡോക്യുമെന്റ് ടെക്സ്റ്റ് അക്ഷരാർത്ഥത്തിൽ പരിഗണിക്കുന്നു, അല്ലെങ്കിൽ ടെക്സ്റ്റ് പാരാമീറ്റർ വിപുലീകരണത്തിനും, കമാൻഡ് സബ്ജക്റ്റിനും, അരിത്മെറ്റിക് വിപുലീകരണത്തിനും (വിപുലീകരണങ്ങളുടെ വിഭാഗത്തിൽ വിവരിച്ചിരിക്കുന്നത് പോലെ) വിധേയമാണ് 'ഓപ്പറേറ്റർ `<<' 'എന്നതിന് പകരം` `- <<' '' എങ്കിൽ, ഇവിടെ-doc-text ലെ പ്രധാന ടാബുകൾ അഴിച്ച് വലിച്ചു.

അന്വേഷണവും നടപ്പിലാക്കലും

മൂന്ന് തരം കമാൻഡുകൾ ഉണ്ട്: ഷെൽ ഫംഗ്ഷനുകൾ, ബിൽഡിൻ കമാൻഡുകൾ, സാധാരണ പ്രോഗ്രാമുകൾ - ആജ്ഞയിൽ കമാൻഡ് തിരഞ്ഞു്. ഓരോരുത്തരും വ്യത്യസ്ത രീതിയിൽ വധിക്കപ്പെടുന്നു.

ഒരു ഷെൽ ഫംഗ്ഷൻ എക്സിക്യൂട്ട് ചെയ്യുമ്പോൾ ഷെൽ ഫംഗ്ഷൻ പരാമീറ്ററുകൾ ($ 0 ഒഴികെ, മാറ്റമില്ലാതെ തുടരുന്നു) ഷെൽ ഫങ്ഷന്റെ ആർഗ്യുമെന്റുകളിലേക്ക് സജ്ജമാക്കും. നിർദ്ദേശത്തിന്റെ പരിതസ്ഥിതിയിൽ വ്യക്തമായി പ്രതിപാദിച്ചിരിക്കുന്ന വേരിയബിളുകൾ (ഫങ്ഷൻ നാമത്തിനു മുൻപായി അസൈൻമെന്റുകൾ സ്ഥാപിച്ചുകൊണ്ട്) ഫംഗ്ഷനെ ലോക്കലാക്കി, നൽകിയിരിക്കുന്ന മൂല്യങ്ങൾക്കായി സജ്ജമാക്കിയിരിക്കണം. അപ്പോൾ ഫങ്ഷൻ നിർവ്വചനത്തിൽ നൽകിയിരിക്കുന്ന കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യുന്നു. കമാൻഡ് പൂർത്തിയാകുമ്പോൾ, ഭൌതിക പാരാമീറ്ററുകൾ അവയുടെ യഥാർത്ഥ മൂല്യങ്ങളിലേക്ക് പുനഃസ്ഥാപിക്കപ്പെടും. ഇത് എല്ലാ നിലവിലുള്ള ഷെല്ലിനും ഇടയിലാണ് സംഭവിക്കുന്നത്.

ഷെൽ ബിൽഡിനുകൾ ഷെല്ലിലേക്ക് ആന്തരികമായി നടപ്പാക്കപ്പെടുന്നു, ഒരു പുതിയ പ്രക്രിയ സ്പാൻ ചെയ്യാതെ.

അല്ലെങ്കിൽ, കമാൻഡ് നാമം ഒരു ഫങ്ഷൻ അല്ലെങ്കിൽ ബിൽഡിനുമായി പൊരുത്തപ്പെടുന്നില്ലെങ്കിൽ, ഫയൽസിസ്റ്റത്തിലെ ഒരു സാധാരണ പ്രോഗ്രാം ആയി തിരയുന്നു (അടുത്ത വിഭാഗത്തിൽ വിവരിച്ചത് പോലെ). ഒരു സാധാരണ പ്രോഗ്രാം എക്സിക്യൂട്ട് ചെയ്യുമ്പോൾ, ഷെൽ പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുന്നു, പ്രോഗ്രാമിലേക്ക് ആർഗ്യുമെന്റുകളും പരിസ്ഥിതിയും കടക്കുന്നു. പ്രോഗ്രാം ഒരു സാധാരണ എക്സിക്യൂട്ടബിൾ ഫയലല്ലെങ്കിൽ (അതൊരു "മാജിക് നമ്പർ" ഉപയോഗിച്ച് ആരംഭിക്കുന്നില്ലെങ്കിൽ, ആസ്കി പ്രതിനിധാനം "#!" ആയതിനാൽ, (2) എർ ENOEXEC നൽകുന്നു, അപ്പോൾ ഷെൽ പ്രോഗ്രാം വ്യാഖ്യാനിക്കുന്നതാണ് ഉപഹാരം ചൈൽഡ് ഷെൽ ഈ കേസിൽ തന്നെ വീണ്ടും പുനർനാമകരണം ചെയ്യും, അങ്ങനെ ആഡ്-ഹോക്ക് ഷെൽ ലിപി കൈകാര്യം ചെയ്യുന്നതിനായി ഒരു പുതിയ ഷെൽ ഉപയോഗിച്ചേനെ. അങ്ങനെ, പേരന്റ് ഷെല്ലിലെ ഹാഷ്ഡ് കമാൻഡുകളുടെ സ്ഥാനം ഓർമ്മയിൽ വരും. കുട്ടി

ഈ പ്രമാണത്തിന്റെ മുമ്പത്തെ പതിപ്പുകളും ഉറവിട കോഡും തന്നെ തെറ്റിദ്ധരിപ്പിച്ച് ഒരു മാന്ത്രിക സംഖ്യയായി "shell procedure" ആയി ഷെൽ സ്ക്രിപ്റ്റ് ഇടയ്ക്കിടെ പരാമർശിക്കുന്നു.

പാത തിരയൽ

ഒരു കമാൻഡ് കണ്ടുപിടിക്കുമ്പോൾ ഷെൽ ആദ്യം ആ പേരുപയോഗിച്ച് ഷെൽ ഫംഗ്ഷൻ ഉണ്ടോ എന്ന് നോക്കുന്നു. അപ്പോൾ ആ പേര് ഉപയോഗിച്ച് ഒരു ബിൽഡിൻ കമാൻഡ് നോക്കുന്നു. ഒരു ബിൽഡ് കമാൻഡ് കണ്ടില്ലെങ്കിൽ, രണ്ട് കാര്യങ്ങളിൽ ഒന്ന് സംഭവിക്കാം:

  1. ഒരു സ്ലാഷിൽ അടങ്ങുന്ന കമാൻഡ് പേരുകൾ ഏതെങ്കിലും തിരയലുകൾ നടത്താൻ സാധിക്കാതെ വരുന്നു.
  2. Shell കമാന്ഡിന് പകരം PATH ലെ ഓരോ എൻട്രിയും തിരയുന്നു. PATH വേരിയബിളിന്റെ മൂല്യം കോളണുകൾ കൊണ്ട് വേർതിരിച്ചിരിക്കുന്ന എൻട്രികൾ എന്ന പരമ്പരയായിരിക്കണം. ഓരോ എൻട്രിയും ഒരു ഡയറക്ടറിയുടെ പേരാണ് ഉള്ളത്. നിലവിലെ ഡയറക്ടറി ഒരു ശൂന്യമായ ഡയറക്ടറിയുടെ പേരിലോ, അല്ലെങ്കിൽ ഒരൊറ്റ തവണയാൽ വ്യക്തമായും സൂചിപ്പിച്ചിരിക്കാം.

കമാൻഡ് എക്സിറ്റ് സ്റ്റാറ്റസ്

ഓരോ കമാൻഡിലും ഒരു ഷെറ്റ് കമാൻഡുകളുടെ പെരുമാറ്റത്തെ സ്വാധീനിക്കുന്ന എക്സിറ്റ് സ്റ്റാറ്റസ് ഉണ്ട്. പൂജ്യം ഒരു സാധാരണ കമാൻഡോ വിജയമോ പൂജ്യം അല്ലാത്ത പൂജ്യം അല്ലാത്തത് പൂജ്യം, തെറ്റ്, തെറ്റ് അല്ലെങ്കിൽ തെറ്റായ സൂചന എന്നിവയ്ക്കായാണ്. ഓരോ കമാന്ഡിനുമായുള്ള മാൻ താൾ പല എക്സിറ്റ് കോഡുകളും അവ അർത്ഥമാക്കുന്നത് എന്താണെന്ന് സൂചിപ്പിക്കണം. കൂടാതെ, ഒരു എക്സിറ്റ്ഷ്ഡ് ഷെൽ ഫംഗ്ഷൻ പോലെ, ബിൽഡിൻ കമാൻഡുകൾ എക്സിറ്റ് കോഡുകൾ തിരികെ നൽകുന്നു.

കോംപ്ലക്സ് കമാൻഡുകൾ

സങ്കീർണമായ കമാൻഡുകൾ കൺട്രോൾ ഓപ്പറേറ്ററുകളോ സംഗ്രഹിത പദങ്ങളോ ഉപയോഗിച്ച് ലളിതമായ ആജ്ഞകളുടെ കൂട്ടിച്ചേർക്കലാണ്, ഒരു വലിയ സങ്കീർണ്ണ കമാൻഡ് സൃഷ്ടിക്കുന്നു. സാധാരണയായി, ഒരു കമാൻഡ് താഴെ പറയുന്നതിൽ ഒന്നാണ്:

പറഞ്ഞിട്ടില്ലാത്ത പക്ഷം, ആജ്ഞയുടെ എക്സിറ്റ് സ്റ്റാറ്റസ് കമാൻഡ് ഉപയോഗിച്ച് അവസാനത്തെ ലളിതമായ കമാൻഡാണ്.

പൈപ്പ് ലൈനുകൾ

നിയന്ത്രണ സംവിധാനത്താൽ വേർതിരിച്ച ഒന്നോ അതിലധികമോ കമാൻഡുകൾ ഒരു പൈപ്പ്ലൈൻ ആണ്. അവസാന കമാൻഡല്ലാതെ മറ്റെല്ലാ സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ടും അടുത്ത കമാൻഡിലെ സ്റ്റാൻഡേർഡ് ഇൻപുട്ടിലേക്ക് കണക്ട് ചെയ്തിരിയ്ക്കുന്നു. അവസാന കമാൻഡിലെ സ്റ്റാൻഡേർഡ് ഔട്പുട്ട് സാധാരണപോലെ, ഷെല്ലിൽ നിന്ന് കൈമാറുന്നു.

ഒരു പൈപ്പ്ലൈൻ ഫോർമാറ്റ്:

[!] command1 | കമാൻഡ് 2 ...]

കമാൻഡ് 1 ന്റെ സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ട് കമാൻഡ് 2 സ്റ്റാൻഡേർഡ് ഇൻപുട്ടിലേക്ക് കണക്ട് ചെയ്തിരിയ്ക്കുന്നു. കമാൻഡ്സിന്റെ ഭാഗമായ റീഡയറക്ഷൻ ഓപ്പറേറ്റർമാർ നിർദേശിച്ച ഏതെങ്കിലും റിഡയറക്ഷൻ മുമ്പ് സ്റ്റാൻഡേർഡ് ഇൻപുട്ട്, സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ട്, അല്ലെങ്കിൽ ഒരു കമാൻഡ് രണ്ടിനും നൽകപ്പെടും.

പൈപ്പ്ലൈൻ പശ്ചാത്തലത്തിൽ ഇല്ലെങ്കിൽ (പിന്നീട് ചർച്ചചെയ്യുന്നു), ഷെൽ എല്ലാ കമാൻഡുകൾ പൂർത്തിയാകും കാത്തിരിക്കുന്നു.

റിസർവ് ചെയ്ത വാക്ക് പൈപ്പ്ലൈനിൽ മുൻപുള്ളതല്ല, എക്സിറ്റ് സ്റ്റാറ്റസ് പൈപ്പ്ലൈനിൽ നിർദേശിച്ചിട്ടുള്ള അവസാന ആജ്ഞയുടെ എക്സിറ്റ് സ്റ്റാറ്റസ് ആണ്. അല്ലെങ്കിൽ, അവസാനത്തെ കമാൻഡിന്റെ എക്സിറ്റ് നിലയുടെ ലോജിക്കൽ NOT അല്ല എക്സിറ്റ് സ്റ്റാറ്റസ്. അതായത്, അവസാനത്തെ കമാൻഡ് പൂജ്യം നൽകുന്നുവെങ്കിൽ, exit സ്റ്റാറ്റസ് 1 ആകുന്നു; പൂജ്യത്തേക്കാൾ അവസാനത്തെ കമാൻഡ് വീണ്ടും നൽകുമ്പോൾ, എക്സിറ്റ് നില പൂജ്യമാണ്.

പൈപ്പ്ലൈൻ സ്റ്റാൻഡേർഡ് ഇൻപുട്ട് അല്ലെങ്കിൽ സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ട് അല്ലെങ്കിൽ രണ്ട് റീഡയറക്ഷൻ മുമ്പ് നടക്കുന്നതിനാൽ, ഇത് റീഡയറക്ഷൻ വഴി പരിഷ്ക്കരിക്കാനാകും. ഉദാഹരണത്തിന്:

$ command1 2> & 1 | കമാൻഡ് 2

കമാൻഡ് 1 ന്റെ സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ടും സ്റ്റാൻഡേർഡ് എറർ കമാൻഡും 2 കമാൻഡ് നൽകുന്നു.

A; അല്ലെങ്കിൽ ടെർമിനേറ്റർ തുടർച്ചയായി എക്സിക്യൂട്ട് ചെയ്യേണ്ട മുൻപത്തെ -യും-അല്ലെങ്കിൽ-പട്ടികയും (അടുത്തത് വിവരിച്ചിരിക്കുന്നു) കാരണമാകുന്നു; മുമ്പും, OR- OR- ലിസ്റ്റിന്റെയും എസിൻക്രണസ് എക്സിക്യൂഷൻ ഒരു കാരണമാകുന്നു.

മറ്റു ചില ഷെല്ലുകളിൽ നിന്നും വ്യത്യസ്തമായി, പൈപ്പ്ലൈനിലുള്ള ഓരോ പ്രക്രിയയും പ്രാരംഭ ഷെൽ (ഒരു ഷെൽ ബിൽഡൻ ആയിരിക്കില്ലെങ്കിൽ, നിലവിലെ ഷെൽ പ്രവർത്തിപ്പിക്കുമ്പോൾ - എന്നാൽ പരിസ്ഥിതിയിൽ ഉണ്ടാവുന്ന ഏതൊരു ഫലവും തുടച്ചുമാറ്റപ്പെടുകയോ ചെയ്താൽ).

പശ്ചാത്തല കമാൻഡുകൾ -

കണ്ട്രോൾ ഓപ്പറേറ്റർ ആംബർപ്ലാൻഡ് (&) ഒരു കമാൻഡ് അവസാനിപ്പിച്ചാൽ, ഷെൽ കമാൻഡ് ഒന്നിടത്ത് പ്രവർത്തിപ്പിക്കുന്നു- അതായത്, അടുത്ത കമാൻഡ് നടപ്പിലാക്കുന്നതിനു മുമ്പ് കമാൻഡിന് പൂർത്തിയാക്കാൻ ഷെൽ കാത്തിരിക്കുകയില്ല.

പശ്ചാത്തലത്തിൽ ഒരു കമാൻഡ് പ്രവർത്തിപ്പിക്കുന്നതിനുള്ള ഫോർമാറ്റ്:

കമാന്ഡ് 1 & [command2 & ...]

ഷെൽ ഇന്ററാക്ടീവ് അല്ലങ്കിൽ, ഒരു അസിൻക്രണസ് കമാൻഡിന്റെ സ്റ്റാൻഡേർഡ് ഇൻപുട്ട് / dev / null ആയി സജ്ജമാക്കിയിരിയ്ക്കുന്നു

ലിസ്റ്റുകൾ - പൊതുവായി സംസാരിക്കുന്നു

പുതിയ വരികൾ, അർദ്ധവിരാമങ്ങൾ, അല്ലെങ്കിൽ ampersands എന്നിവയാൽ വേർതിരിച്ച പൂജ്യം അല്ലെങ്കിൽ കൂടുതൽ ആജ്ഞകളുടെ ഒരു ശ്രേണിയാണിത്, കൂടാതെ ഈ മൂന്ന് പ്രതീകങ്ങളിൽ ഒന്നിനൊഴിച്ച് നിർത്തലാക്കും. ഒരു പട്ടികയിലുള്ള ആജ്ഞകൾ അവ എഴുതപ്പെട്ട ക്രമത്തിൽ നടപ്പിലാക്കുന്നു. ആംപ്ലിഫയർ കമാൻഡ് പിന്തുടരുകയാണെങ്കിൽ, ഷെൽ ആ കമാൻഡ് ആരംഭിച്ച് അടുത്ത കമാൻഡിലേക്ക് പോകുക. അല്ലെങ്കിൽ അടുത്തതിലേക്ക് പോകുന്നതിനു മുമ്പ് കമാൻറ് അവസാനിപ്പിക്കുന്നതിന് കാത്തിരിക്കുകയാണ്.

ഷോർട്ട് സർക്യൂട്ട് ലിസ്റ്റ് ഓപ്പറേററർ

AND & OR ലിസ്റ്റ് ഓപ്പറേറ്റർമാർ `` && '', '`||' 'എന്നിവയാണ്. `` && '' ആദ്യത്തെ കമാൻഡ് നടപ്പിലാക്കുകയും രണ്ടാമത്തെ കമാൻഡ് നടപ്പിലാക്കുകയും ചെയ്താൽ ആദ്യ കമാൻഡിന്റെ എക്സിറ്റ് നില പൂജ്യമാണ്. `` || "ഒരേപോലെയാണെങ്കിലും രണ്ടാമത്തെ കമാൻഡ് നടപ്പിലാക്കുന്നു എങ്കിൽ ആദ്യ കമാൻഡിലെ exit നില പൂജ്യമായിരിക്കും. `` && '', '`||' 'എന്നിവ രണ്ടും ഒരേ മുൻഗണനയാണ്.

ഫ്ലോ-കൺട്രക്ട് കൺസ്ട്രക്ഷൻസ് - എപ്പോൾ, എപ്പോൾ, എന്ന കാര്യത്തിൽ

If കമാണ്ടിന്റെ സിന്റാക്സ്

ലിസ്റ്റ് എങ്കിൽ
തുടർന്ന് ലിസ്റ്റ് ചെയ്യുക
[എലിഫ് ലിസ്റ്റ്
പിന്നെ പട്ടിക] ...
[മറ്റ് പട്ടിക]
fi

അതേസമയം കമാന്ഡിന്റെ സിന്റാക്സ്

ലിസ്റ്റ് സമയത്ത്
ലിസ്റ്റ് ചെയ്യുക
ചെയ്തു

രണ്ട് ലിസ്റ്റുകളും തുടർച്ചയായി എക്സിറ്റ് ചെയ്യപ്പെടുന്നു, എന്നാൽ ആദ്യ പട്ടികയിലെ എക്സിറ്റ് നില പൂജ്യമാണ്. കമാൻഡ് സമാനമാണെങ്കിലും, ഒരു സ്ഥാനത്തിനിടയ്ക്കു് വരെ ഈ പദം ഉപയോഗിയ്ക്കുന്നു, ആദ്യ പട്ടികയുടെ എക്സിറ്റ് നില പൂജ്യം വരുന്നതുവരെ ആവർത്തിക്കുന്നതിനു് ഇതു് കാരണമാകുന്നു.

കമാന്ഡിനുള്ള സിന്റാക്സ് ആണ്

വാക്കിൽ വേരിയബിളിനായി ...
ലിസ്റ്റ് ചെയ്യുക
ചെയ്തു

വാക്കുകൾ വികസിപ്പിച്ചു, തുടർന്ന് ലിസ്റ്റ് ഓരോ വാക്കിനും വേരിയബിൾ സെറ്റ് ഉപയോഗിച്ച് വീണ്ടും ആവർത്തിക്കുന്നു. 'ചെയ്യുക', '' '' '' '' 'എന്നിവ ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കാം

ബ്രേക്ക് തുടരുന്ന സിന്റാക്സ് ആജ്ഞയാണ്

ഇടവേള
തുടരുക

ബ്രേക്ക് നംബറിന് വേണ്ടി അല്ലെങ്കിൽ ഇടവേളകളിൽ ഉള്ളിൽ ഉള്ളതാണ്. ഇൻറേർമസ്റ്റ് ലൂപ്പിന് അടുത്ത ആവർത്തി തുടരുക. ഇവ ബിൽറ്റ് കമാന്ഡുകളായി നടപ്പിലാക്കുന്നു.

കേസ് ആജ്ഞയുടെ സിന്റാക്സ് ആണ്

കേസ് വാക്കിൽ
പാറ്റേൺ) ലിസ്റ്റ്;
...
esac

പാറ്റേൺ യഥാർത്ഥത്തിൽ ഒന്നോ അതിലധികമോ പാറ്റേണുകളാകും (പിന്നീട് വിവരിച്ച ഷെൽ പാറ്റേണുകൾ കാണുക), `` 'അക്ഷരങ്ങൾ ഉപയോഗിച്ച് വേർതിരിച്ചെടുക്കാൻ കഴിയും.

ഗ്രൂപ്പിംഗ് കമാൻഡുകൾ ഒന്നിച്ച്

കമാൻഡുകൾ രചിച്ചുകൊണ്ട് ക്രമീകരിച്ചേക്കാം

(പട്ടിക)

അഥവാ

{list;

ഇതിൽ ആദ്യത്തേത് ഒരു സബ്ഹെളിലെ കമാൻഡുകൾ പ്രവർത്തിപ്പിക്കുന്നു. ബുള്ളറ്റിൻ കമാൻഡുകൾ (പട്ടികയിൽ) കൂട്ടിയാൽ ഇപ്പോഴുള്ള ഷെല്ലിനേയും ബാധിക്കില്ല. രണ്ടാമത്തെ ഫോം മറ്റൊന്നുപയോഗിക്കുകയില്ല, അത്രയും കൂടുതൽ കാര്യക്ഷമവുമാണ്. ഈ രീതിയിൽ ഗ്രൂപ്പുചെയ്യൽ ആജ്ഞകൾ ഒന്നിലധികം പ്രോഗ്രാമുകളുടെ ഔട്ട്പുട്ട് റീഡയറക്ട് ചെയ്യാൻ അനുവദിക്കുന്നു:

{printf ഹലോ; പ്രിന്റ് വേൾ \ n ";}> സ്വാഗതം

ഫങ്ഷനുകൾ

ഒരു ഫങ്ഷൻ നിർവചിക്കലിന്റെ സിന്റാക്സ്

name () കമാൻഡ്

ഒരു ഫങ്ഷൻ ഡെഫിനിഷൻ എക്സിക്യൂട്ടബിൾ പ്രസ്താവനയാണ്; എക്സിക്യൂട്ട് ചെയ്യുമ്പോൾ അത് പേരുള്ള ഒരു ഫംഗ്ഷൻ ഇൻസ്റ്റാൾ ചെയ്യുകയും പൂജ്യത്തിന്റെ ഒരു എക്സിറ്റ് നില നൽകുകയും ചെയ്യും. `{", "` `}" 'എന്നിവയ്ക്കൊപ്പം' ''

ഒരു പ്രാദേശിക ആജ്ഞ ഉപയോഗിച്ചുകൊണ്ടുള്ള ഒരു ചരം വേരിയബിളുകൾ പ്രാദേശികമായി പ്രഖ്യാപിക്കപ്പെടാം. ഇത് ഒരു ഫങ്ഷന്റെ ആദ്യ സ്റ്റേറ്റ്മെന്റായി പ്രത്യക്ഷപ്പെടുകയും സിന്റാക്സ് ആണ്

പ്രാദേശികം (വേരിയബിൾ | -] ...

ഒരു ബിൽഡ് കമാൻഡ് ആയി ലോക്കൽ നടപ്പിലാക്കുന്നു.

ഒരു വേരിയബിള് ലോക്കല് ​​ചെയ്യപ്പെട്ടാല്, അതിന്റെ പ്രാരംഭ മൂല്യവും, ചുറ്റുപാടിന്റെ അതേ വേറില് നിന്നും വേരിയബിളില് നിന്ന് കയറ്റി അയക്കുകയും വായനക്കാരന്റെ പതാകകള് ഉണ്ടാവുകയും ചെയ്യുന്നു. അല്ലെങ്കിൽ, വേരിയബിൾ ആദ്യം സജ്ജമാക്കാതിരിക്കുക. ഷെൽ ഡൈനാമിക് സ്കോപ്പിംഗ് ഉപയോഗിക്കുന്നു, അതിനാൽ നിങ്ങൾ ചരം x ഒരു ലോക്കൽ ഫങ്ഷൻ ഫങ്ഷൻ ആക്കുക, തുടർന്ന് ഫങ്ഷൻ G എന്ന് വിളിക്കുന്നുവെങ്കിൽ, g നു വേണ്ടി നിർമ്മിച്ച വേരിയബിളിനെക്കുറിച്ചുള്ള റെഫറൻസുകൾ f ന് പകരം പ്രഖ്യാപിച്ച വേരിയബിൾ x നെ സൂചിപ്പിക്കും, ആഗോള വേരിയബിളായ x .

ലോക്കല് ​​ഉണ്ടാക്കുന്നതിനേക്കാള് കൂടുതല് പ്രത്യേകത പാരാമീറ്റര് മാത്രമാണ് `-` `ഫംഗ്ഷന് തിരിച്ചു വരുമ്പോള് ഫംഗ്ഷന് ഉള്ള സെറ്റ് കമാന്ഡ് വഴി മാറുന്ന ഏതെങ്കിലും ഷെല് ഓപ്ഷനുകള് ലോജിക്കല്` - `` ആയിരിക്കും.

മടക്കസന്ദേശത്തിന്റെ സിന്റാക്സ്

മടങ്ങുക [exitstatus

ഇത് നിലവിൽ നടപ്പിലാക്കുന്ന ഫംഗ്ഷൻ അവസാനിപ്പിക്കുന്നു. ഒരു ബിൽഡിൻ കമാന്ഡ് എന്ന നിലയില് റിട്ടേണ് പ്രവര്ത്തിപ്പിക്കുന്നു.

വേരിയബിളുകളും പാരാമീറ്ററുകളും

ഷെല്ലിന്റെ ഒരു കൂട്ടം പാരാമീറ്ററുകൾ പരിപാലിക്കുന്നു. ഒരു പേരുകൊണ്ട് സൂചിപ്പിച്ചിരിക്കുന്ന ഒരു പരാമീറ്ററിനെ ഒരു വേരിയബിൾ എന്ന് വിളിക്കുന്നു. ആരംഭിക്കുമ്പോൾ ഷെൽ വേരിയബിളുകൾക്ക് എന്വയോൺമെൻറ് വേരിയബിളുകൾ തിരിയുന്നു. പുതിയ വേരിയബിളുകൾ ഫോം ഉപയോഗിച്ച് സജ്ജമാക്കാം

പേര് = മൂല്യം

ഉപയോക്താവിന് നിശ്ചയിക്കപ്പെട്ട വെരിഫിക്കുകൾ അക്ഷരമാലകൾ, സംഖ്യകൾ, അണ്ടർസ്കോറുകൾ എന്നിവ മാത്രം ഉൾക്കൊള്ളുന്ന ഒരു പേര് ഉണ്ടായിരിക്കണം - അവയിൽ ആദ്യത്തേത് സംഖ്യയായിരിക്കരുത്. താഴെ പറഞ്ഞിരിക്കുന്ന രീതിയിൽ ഒരു സംഖ്യയും പ്രത്യേക പ്രതീകവും ഒരു പാരാമീറ്റർ ഉപയോഗിച്ച് സൂചിപ്പിക്കാവുന്നതാണ്.

പോസിഷണൽ പാരാമീറ്ററുകൾ

ഒരു നമ്പർ (n> 0) ഉപയോഗിച്ച് സൂചിപ്പിച്ചിരിക്കുന്ന പരാമീറ്ററാണു് positional parameter. ഷെൽ സ്ക്രിപ്റ്റിന്റെ പേര് പിന്തുടരുന്ന കമാൻഡ് ലൈൻ ആർഗ്യുമെന്റുകളുടെ മൂല്ല്യങ്ങളിൽ ആദ്യം ഷെല്ലുകൾ സജ്ജമാക്കുന്നു. സെറ്റ് (1) ബിൽഡൻ സജ്ജമാക്കാനും അവ പുനഃസജ്ജമാക്കാനും ഉപയോഗിക്കാം.

പ്രത്യേക പരിമിതികൾ

ഒരു പ്രത്യേക പരാമീറ്റർ താഴെപ്പറയുന്ന പ്രത്യേക പ്രതീകങ്ങളിൽ ഒന്നായി സൂചിപ്പിച്ചിട്ടുള്ള ഒരു പാരാമീറ്ററാണ്. പാരാമീറ്ററിന്റെ മൂല്യം അതിൻറെ പ്രതീകത്തിന് അടുത്തായി ലിസ്റ്റ് ചെയ്തിരിക്കുന്നു.

*

ഒന്നില് നിന്ന് ആരംഭിക്കുന്ന positional പാരാമീറ്ററുകളിലേക്ക് വികസിപ്പിക്കുന്നു. ഡബിൾ ഉദ്ധരിച്ച സ്ട്രിംഗിനുളളിൽ വിപുലീകരണം സംഭവിക്കുമ്പോൾ, ഐഎഫ്എസ് വേരിയബിളിന്റെ ആദ്യ പ്രതീകത്തിൽ വേർതിരിക്കുന്ന ഓരോ പാരാമീറ്ററിലുമുള്ള മൂല്യത്തോടുകൂടിയ ഒരു ഫീൽഡിലേക്ക് അതു വികസിക്കുന്നു, അല്ലെങ്കിൽ ഐഎഫ്എസ് സജ്ജമാക്കാത്തെങ്കിൽ ആയിരിക്കണം.

@

ഒന്നില് നിന്ന് ആരംഭിക്കുന്ന positional പാരാമീറ്ററുകളിലേക്ക് വികസിപ്പിക്കുന്നു. ഇരട്ട ഉദ്ധരണികൾക്കുള്ളിൽ ഈ വികസനം സംഭവിക്കുമ്പോൾ, ഓരോ പോസിറ്റീവ് പാരാമീറ്ററും ഒരു വ്യത്യസ്ത വാദംപോലെ വികസിപ്പിക്കുന്നു. Positional parameters ഇല്ലെങ്കിൽ, @ ഇരട്ട-ഉദ്ധരിക്കപ്പെടുമ്പോൾ പോലും @ വിപുലപ്പെടുത്തൽ പൂജ്യം ആർഗ്യുമെന്റുകൾ സൃഷ്ടിക്കുന്നു. ഉദാഹരണത്തിന്, $ 1 `abc '' ഉം '$ 2' 'ഡെഫ് ഗിഹ്' 'ഉം ആണെങ്കിൽ, Qq $ @ രണ്ട് ആർഗ്യുമെന്റുകൾക്ക് വികസിപ്പിക്കുന്നു:

abc def ghi

#

പദസമ്പന്ന പരാമീറ്ററുകളുടെ എണ്ണത്തിലേക്ക് വിപുലീകരിക്കുക.

?

ഏറ്റവും പുതിയ പൈപ്പ്ലൈനിലെ എക്സിറ്റ് നിലയിലേക്ക് വികസിപ്പിക്കുന്നു.

- (ഹൈഫൻ.)

നിലവിലുള്ള ഓപ്ഷൻ ഫ്ലാഗുകൾ (സ്ട്രിംഗിലേക്ക് സംയോജിതമായ ഏക-ലെറ്റർ ഓപ്ഷൻ നാമങ്ങളുടെ പേരുകൾ) വിപുലീകരിക്കുന്നു, സെറ്റ് ബിൽഡിൻ കമാണ്ടിലൂടെ അല്ലെങ്കിൽ ഷെൽഫിന് സംയുക്തമായി.

$

നിർവ്വഹിച്ച ഷെല്ലുടെ പ്രോസസ് ഐഡിയിലേക്ക് വിപുലീകരിക്കുക. ഒരു സബ്ഹെൽ അതിന്റെ പേരന്റ് അതേ മൂല്യം $ നിലനിർത്തുന്നു.

!

നിലവിലുള്ള ഷെല്ലിൽ നിന്നും നിർവ്വഹിച്ച ഏറ്റവും പുതിയ പശ്ചാത്തല കമാൻഡിന്റെ പ്രോസസ് ഐഡിയിലേയ്ക്ക് വിപുലീകരിക്കുന്നു. ഒരു പൈപ്പ്ലൈനിൽ, പ്രോസസ് ഐഡി പൈപ്പ്ലൈനിലെ അവസാന ആജ്ഞയാണ്.

0 (പൂജ്യം.)

ഷെൽ അല്ലെങ്കിൽ ഷെൽ സ്ക്രിപ്റ്റിന്റെ പേര് വികസിപ്പിക്കുന്നു.

Word Expansions

വാക്കുകളിൽ നടത്തിയ വിവിധ വികാസങ്ങളെ ഈ ഭാഗത്ത് വിവരിക്കുന്നു. പിന്നീട് എല്ലാ വിശദീകരണങ്ങളും എല്ലാ വാക്കുകളിലും നടപ്പാക്കുന്നില്ല.

ടിൽഡ വികസനം, പരാമീറ്റർ വികാസങ്ങൾ, കമാൻഡ് പകരക്കാർ, ഗണിത വികാസങ്ങൾ, ഒരൊറ്റ വാക്കിൽ തന്നെ ഉളവാക്കുന്ന ഉദ്ധരണികൾ നീക്കംചെയ്യൽ. ഒരൊറ്റ വാക്കിൽ നിന്നും ഒന്നിലധികം ഫീൽഡുകൾ സൃഷ്ടിക്കാൻ കഴിയുന്ന ഫീൽഡ് വിഭജനം അല്ലെങ്കിൽ പാതയുടെ വിപുലീകരണം മാത്രമാണിത്. ഇരട്ട ഉദ്ധരണികൾക്കുള്ളിൽ പ്രത്യേക പാരാമീറ്റർ @ ന്റെ വികസനം ആണ് ഈ നിയമത്തിലെ ഏക ഒഴിവാക്കൽ.

പദ വിന്യാസത്തിന്റെ ക്രമം:

  1. ടിൽഡ് എക്സ്പാൻഷൻ, പവറേറ്റർ എക്സ്പാൻഷൻ, കമാൻഡ് ബസ്റ്, ആർട്ടിമെറ്റിക് എക്സ്പാൻഷൻ (ഇവ എല്ലാം ഒരേ സമയം ഉണ്ടാകാറുണ്ട്).
  2. IFS വേരിയബിൾ അസാധുല്ലാതെ, ഫീൽഡ് സ്പ്ലിറ്റ് ഘട്ടം (1) നിർമ്മിച്ച ഫീൽഡുകളിൽ നടത്തപ്പെടുന്നു.
  3. പാത്ത്നാമ എക്സ്പാൻഷൻ (സെറ്റ് f പ്രയോഗത്തിൽ വരുന്നില്ലെങ്കിൽ).
  4. ഉദ്ധരണി നീക്കംചെയ്യൽ.

പാരാമീറ്റർ വിപുലീകരണം, കമാൻഡ് ബദൽ, അല്ലെങ്കിൽ അരിത്മെറ്റിക് വിലയിരുത്തൽ എന്നിവ അവതരിപ്പിക്കാൻ $ പ്രതീകം ഉപയോഗിക്കുന്നു.

ടിൽഡ് എക്സ്പാൻഷൻ (ഒരു ഉപയോക്താവിൻറെ ഹോം ഡയറക്ടറിക്ക് പകരം)

ടൈറ്റിൽ വ്യാപ്തി (~) നൽകാത്ത ഒരു ടിൽഡ അക്ഷരത്തോടെ തുടങ്ങുന്ന ഒരു പദം. സ്ളാഷ് (/) അല്ലെങ്കിൽ പദത്തിന്റെ അവസാനം വരെയുള്ള എല്ലാ പ്രതീകങ്ങളും ഒരു ഉപയോക്തൃനാമമായി കണക്കാക്കുകയും ഉപയോക്തൃ ഹോം ഡയറക്ടറി ഉപയോഗിച്ച് മാറ്റി എഴുതുകയും ചെയ്യുന്നു. ഉപയോക്തൃനാമം നഷ്ടപ്പെട്ടിട്ടുണ്ടെങ്കിൽ (~ / foobar ൽ), ടിൽഡിൽ HOME വേരിയബിളിന്റെ (നിലവിലെ ഉപയോക്താവിന്റെ ഹോം ഡയറക്ടറി) മൂല്യം മാറ്റിസ്ഥാപിക്കുന്നു.

പവറേറ്റർ വിപുലീകരണം

പരാമീറ്റർ വിപുലീകരണത്തിനുള്ള ഫോർമാറ്റ് താഴെ പറയുന്നു:

``} "'ഏതെങ്കിലും' '' '' ഒരു ബാക്കലിലൂടെയോ ഉദ്ധരിച്ച സ്ട്രിംഗിനോടടുത്തോ, എംബഡ്ചെയ്ത അൾട്ടിമെമിക്കൽ എക്സ്പാൻഷനിലെ പ്രതീകങ്ങൾ, കമാൻഡ് പകരക്കാരനാകുകയും, വേരിയബിൾ വിപുലീകരണങ്ങളോ ആകുന്നതുവരെ എല്ലാ പ്രതീകങ്ങളും ഉൾക്കൊള്ളുന്നു, പൊരുത്തപ്പെടുന്ന "` "

പരാമീറ്റർ വിപുലീകരണത്തിനുള്ള ഏറ്റവും ലളിതമായ രൂപം:

പരാമീറ്റർ മാറ്റിയാൽ മതിയാവും.

പരാമീറ്ററിന്റെ പേര് അല്ലെങ്കിൽ ചിഹ്നം ബ്രേക്കുകളിൽ വയ്ക്കാം, ഇവയെല്ലാം ഒന്നിൽ കൂടുതൽ അക്കങ്ങളുള്ള പോസിഷിക്കൽ പരാമീറ്ററുകൾ ഒഴികെ അല്ലെങ്കിൽ പാരാമീറ്റർ, തുടർന്ന് ഒരു ഭാഗത്തിന്റെ ഭാഗമായി വ്യാഖ്യാനിക്കാൻ കഴിയുന്ന ഒരു പ്രതീകം. ഇരട്ട ഉദ്ധരണികൾക്കുള്ളിൽ ഒരു പാരാമീറ്റർ വിപുലീകരണം സംഭവിക്കുന്നുവെങ്കിൽ:

  1. വിപുലീകരണത്തിന്റെ ഫലങ്ങളിൽ പാഥ് വിപുലീകരണം നടപ്പിലാക്കില്ല.
  2. @ ഒഴികെ, വികാസത്തിന്റെ ഫലങ്ങളിൽ ഫീൽഡ് വിഭജനം നടത്തുകയില്ല.

കൂടാതെ, താഴെ പറയുന്ന ഫോർമാറ്റുകളിലൊന്ന് ഉപയോഗിച്ച് ഒരു പാരാമീറ്റർ വിപുലീകരണത്തിന്റെ പരിഷ്ക്കരണം മാറ്റാവുന്നതാണ്.

സ്ഥിര മൂല്യങ്ങൾ ഉപയോഗിക്കുക. പാരാമീറ്റർ സജ്ജമാക്കാതിരിക്കുകയോ അല്ലെങ്കിൽ നൾ അസാധുവാക്കുകയോ ചെയ്തിട്ടുണ്ടെങ്കിൽ, പദത്തിന്റെ വ്യാപനം മാറ്റി പകരം വയ്ക്കാം; അല്ലെങ്കിൽ, പരാമീറ്ററിന്റെ മൂല്യം മാറ്റി പകരം വയ്ക്കാം.

സ്ഥിര മൂല്യങ്ങൾ നൽകുക. പാരാമീറ്റർ സജ്ജമാക്കിയില്ലെങ്കിലോ നൾ അസാധുവാണെങ്കിലോ, പദത്തിന്റെ വിപുലീകരണം പരാമീറ്ററായി നിശ്ചയിച്ചിരിക്കുന്നു. എല്ലാ സാഹചര്യങ്ങളിലും, പരാമീറ്ററിന്റെ അന്തിമ മൂല്യം മാറ്റി പകരം വയ്ക്കപ്പെടും. ഈ വ്യവസ്ഥിതിയിൽ മാത്രം വേരിയബിളുകൾ, പദസമ്പന്ന പരാമീറ്ററുകൾ അല്ലെങ്കിൽ പ്രത്യേക നിർവചനങ്ങൾ എന്നിവ മാത്രമേ അടങ്ങിയിട്ടുള്ളൂ.

പൂജ്യം അല്ലെങ്കിൽ സജ്ജമാക്കാതിരിക്കുകയാണെങ്കിൽ പിശക് സൂചിപ്പിക്കുക. പരാമീറ്റർ സജ്ജമാക്കിയിരുന്നില്ലെങ്കിൽ അല്ലെങ്കിൽ പൂജ്യം ആണെങ്കിൽ, പദത്തിന്റെ വികാസം (അഥവാ വാക്കുകളെ ഒഴിവാക്കിയിട്ടുണ്ടെങ്കിൽ അത് സൂചിപ്പിക്കുന്ന സന്ദേശമയയ്ക്കൽ) സാധാരണ പിശകുകളിലേക്കും ഷെൽ അവസാനിപ്പിക്കും, പൂജ്യമല്ലാത്ത എക്സിറ്റ് സ്റ്റാറ്റസോടുകൂടിയ ഷെൽ അവസാനിക്കും. അല്ലെങ്കിൽ, പരാമീറ്ററിന്റെ മൂല്ല്യം പകരം വെയ്ക്കുന്നു. ഒരു ഇന്ററാക്ടീവ് ഷെൽ ഉപേക്ഷിക്കേണ്ടതില്ല.

ഇതര മൂല്യം ഉപയോഗിക്കുക. പാരാമീറ്റർ സജ്ജമാക്കിയിട്ടില്ലെങ്കിലോ നൾ അസാധുവാണെങ്കിലോ, നൾ മാറ്റി പകരം വയ്ക്കാം; അല്ലെങ്കിൽ, വാക്കുകളുടെ വ്യാപനം മാറ്റി പകരം വെയ്ക്കുന്നു.

മുമ്പ് കാണിച്ചിരിക്കുന്ന പാരാമീറ്റർ എക്സ്പാൻഷനുകളിൽ സജ്ജീകരിച്ചിട്ടില്ലാത്ത അല്ലെങ്കിൽ ശരിയല്ലാത്ത പാരാമീറ്ററിലുള്ള പരിശോധനയിൽ ഫോർമാന്റെ ഉപയോഗം ഫലമായി ഫലമായി ഉണ്ടാകാം. കോളണുകളുടെ അഭാവം സജ്ജമാക്കാത്ത ഒരു പാരാമീറ്ററിന് ഒരു പരിശോധനയിൽ ഫലം ലഭിക്കും.

സ്ട്രിംഗ് ദൈർഘ്യം. പരാമീറ്ററിന്റെ മൂല്യത്തിന്റെ പ്രതീകങ്ങളിൽ നീളം.

പരാമിർ വിപുലീകരണത്തിന്റെ താഴെപ്പറയുന്ന നാല് ഇനങ്ങളുടെ സംസ്കരണ പ്രോസസ്സിംഗ് ലഭ്യമാക്കുന്നു. ഓരോ സന്ദർഭത്തിലും, പാറ്റേണുകൾ മൂല്യനിർണ്ണയം ചെയ്യാൻ പതിവ് എക്സ്പ്രഷൻ നൊട്ടേഷനു പകരം പാറ്റേൺ പൊരുത്തപ്പെടൽ നോട്ടേഷൻ (ഷെൽ പാറ്റേണുകൾ കാണുക). പാരാമീറ്റർ * അല്ലെങ്കിൽ @ ആണെങ്കിൽ, വിപുലീകരണത്തിന്റെ ഫലം വ്യക്തമല്ല. ഇരട്ട ഉദ്ധരണികളിൽ പൂർണ്ണ പാരാമീറ്റർ വിപുലീകരണ സ്ട്രിങിനെ പരിമിതപ്പെടുത്തുന്നത്, താഴെപ്പറയുന്ന നാല് തരം പ്രതീകങ്ങളുടെ പ്രതീകങ്ങൾ ഉന്നയിക്കുന്നില്ല, എന്നാൽ ബ്രേക്കുകളിലെ പ്രതീകങ്ങൾ ഉദ്ധരിച്ച് ഇത് ഫലപ്രദമാണ്.

ചെറിയ സഫിക്സ് പാറ്റേൺ നീക്കംചെയ്യുക. ഒരു പാറ്റേൺ നിർമിക്കാൻ ഈ പദം വികസിപ്പിച്ചു. പാരാമീറ്റർ വിപുലീകരണം പിന്നീട് പാരാമീറ്ററിൽ ഫലമായി ലഭിക്കുന്നു, മായ്ക്കൽ പാറ്റേണുമായി പൊരുത്തപ്പെടുന്ന സഫിക്സിലെ ഏറ്റവും ചെറിയ ഭാഗം.

വലിയ സഫിക്സ് പാറ്റേൺ നീക്കംചെയ്യുക. ഒരു പാറ്റേൺ നിർമിക്കാൻ ഈ പദം വികസിപ്പിച്ചു. പാരാമീറ്റർ വിപുലീകരണം തുടർന്ന് പാരാമീറ്റർ, ഫലം മാറിയ സഫിക്സ് ഏറ്റവും വലിയ ഭാഗം.

ചെറിയ പ്രിഫിക്സ് പാറ്റേൺ നീക്കംചെയ്യുക. ഒരു പാറ്റേൺ നിർമിക്കാൻ ഈ പദം വികസിപ്പിച്ചു. പാരാമീറ്റർ വിപുലീകരണം തുടർന്ന് പാരാമീറ്റർ ഫലമായി, മായ്ക്കൽ പാറ്റേൺ അനുസരിച്ച് പ്രിഫിക്സിലെ ഏറ്റവും ചെറിയ ഭാഗം.

ഏറ്റവും വലിയ പ്രിഫിക്സ് പാറ്റേൺ നീക്കംചെയ്യുക. ഒരു പാറ്റേൺ നിർമിക്കാൻ ഈ പദം വികസിപ്പിച്ചു. പാരാമീറ്റർ വിപുലീകരണം തുടർന്ന് പാരാമീറ്റർ ഫലമായി, മായ്ക്കൽ പാറ്റേൺ പൊരുത്തപ്പെടുന്ന പ്രിഫിക്സ് ഏറ്റവും വലിയ ഭാഗം.

കമാൻഡ് ഇതിനുള്ള സംവിധാനമാണ്

കമാൻഡ് പകരം വയ്ക്കൽ ഒരു ആജ്ഞയുടെ കമാന്ഡിനു പകരം ആ കമാൻഡ് നൽകാവുന്നതാണ്. കമാൻഡ് ഇങ്ങനെ ചേർക്കുമ്പോൾ കമാൻഡ് ബദൽ സംഭവിക്കുന്നു:

$ (ആജ്ഞ)

അല്ലെങ്കിൽ Po `` backquoted '' പതിപ്പ് പിസി:

`ആജ്ഞ

ഷെൽ ഒരു സബ്ഹെൽ എൻവയോൺമെന്റിൽ കമാൻഡ് നടപ്പിലാക്കുന്നതിനും കമാൻഡ് പകരംവെയ്ക്കുന്നതിനു പകരം ആജ്ഞയുടെ സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ടിലേക്ക് മാറ്റി, ഒരു സബ്സിസ്റ്റിന്റെ അവസാനം ഒന്നോ അതിലധികമോ സെക്റ്റുകൾ നീക്കംചെയ്യുന്നു. (ഔട്ട്പുട്ടിന്റെ അവസാനം വരുന്നതിനു മുൻപ് s ഉൾപ്പെടുത്തിയിരിയ്ക്കുന്നു, എന്നിരുന്നാലും ഫീൽഡ് വിഭജന സമയത്ത് അവർ കളിലേക്ക് വിവർത്തനം ചെയ്യാം, IFS ന്റെ മൂല്യം അനുസരിച്ച് അത് പ്രാബല്യത്തിൽ വരുന്നതാണ്.)

അരിത്മെറ്റിക് എക്സ്പാൻഷൻ

അരിത്മെറ്റിക് വികസനം ഒരു അരിത്മെറ്റിക് എക്സ്പ്രഷൻ മൂല്യനിർണയം നടത്തുന്നതിനുള്ള ഒരു സംവിധാനം നൽകുന്നു, അതിന്റെ മൂല്യം മാറ്റിസ്ഥാപിക്കുന്നു. അരിത്മെറ്റിക് വിപുലീകരണത്തിനുള്ള ഫോർമാറ്റ് താഴെ പറയുന്നു:

$ ((എക്സ്പ്രഷൻ))

പദപ്രയോഗം ഇരട്ട ഉദ്ധരണികളിലാണെങ്കിൽ, ആ സംഖ്യയിൽ ഇരട്ട ഉദ്ധരണി പ്രത്യേകം പരിഗണിക്കുന്നില്ല. പരാമീറ്റർ വികസനം, കമാൻഡ് പകരം വയ്ക്കൽ, ഉദ്ധരണികൾ എന്നിവ നീക്കം ചെയ്യുന്നതിനുള്ള എല്ലാ ടോക്കണുകളും ഷെൽ വികസിപ്പിക്കുന്നു.

അടുത്തതായി, ഷെൽ ഇത് ഒരു അരിത്മെറ്റിക് എക്സ്പ്രെഷൻ ആയും എക്സ്പ്രഷന്റെ മൂല്യം മാറ്റി പകരം വയ്ക്കും.

വൈറ്റ് സ്പേസ് സ്പ്ലിറ്റ് (ഫീൽഡ് സ്പ്ലിറ്റ്)

പാരാമീറ്റർ വിപുലീകരണത്തിനു ശേഷം, കമാൻഡ് സബ്ജക്റ്റിനും, ഗണിത വിപുലീകരണത്തിനും ശേഷം, ഷെൽ വിഭജിക്കുന്നതിന്റെയും ഇരട്ടി ഉദ്ധരണികളുടെയും ഇരട്ട ഉദ്ധരണികളിൽ സംഭവിക്കാത്ത വിപുലീകരണങ്ങളുടെയും പകരംവുകളുടെയും ഫലം പരിശോധിക്കുന്നു.

ഷെൽ ഒരു ഡിലിമിറ്റർ ആയി IFS ന്റെ ഓരോ ക്യാരക്ടറും കൈകാര്യം ചെയ്യുന്നു. കൂടാതെ, പാരാമീറ്റർ വിപുലീകരണത്തിന്റെയും കമാൻഡ് പകരംവെയ്ക്കുന്നതിനുള്ള ഫീൽഡുകളെയും വേർതിരിക്കാൻ ഡിലിമിറ്ററുകൾ ഉപയോഗിക്കുക.

പാത്ത്നാമ എക്സ്പാൻഷൻ (ഫയൽ നാമം ജനറേഷൻ)

F- flag സജ്ജീകരിച്ചിട്ടില്ലെങ്കിൽ, വാക്കിന്റെ വിഭജനം പൂർത്തിയായ ശേഷം ഫയൽ നാമം നിർമ്മിക്കുന്നു. ഓരോ വാക്കും സ്ലാഷുകൾ ഉപയോഗിച്ച് വേർതിരിച്ച പാറ്റേണുകളുടെ ഒരു ശ്രേണിയായി കാണുന്നു. വിപുലീകരണ പ്രക്രിയ നിർവചിക്കപ്പെട്ടിട്ടുള്ള പാറ്റേണുമായി പൊരുത്തപ്പെടുന്ന ഒരു സ്ട്രിംഗിനൊപ്പം ഓരോ പാറ്റേണും മാറ്റി, പേരുകൾ സൃഷ്ടിക്കാൻ കഴിയുന്ന എല്ലാ പേരുടേയും പേരുകൾ ഈ പദം മാറ്റിസ്ഥാപിക്കുന്നു. ഇതിൽ രണ്ട് നിയന്ത്രണങ്ങൾ ഉണ്ട്: ഒന്നാമത്തേത്, ഒരു സ്ലാഷ് അടങ്ങുന്ന ഒരു സ്ട്രിംഗുമായി ഒരു പാറ്റേൺ പൊരുത്തപ്പെടുന്നില്ല, രണ്ടാമത്തേത്, പാറ്റേൺ ആദ്യ പ്രതീകം ഒരു കാലഘട്ടത്തിലാണെങ്കിൽ, ഒരു പാറ്റേൺ ആരംഭിക്കുന്ന ഒരു സ്ട്രിംഗുമായി ഒരു പാറ്റേൺ പൊരുത്തപ്പെടുന്നില്ല. പാഥ്എൻഎൻ എക്സ്പാൻഷൻ, കേസ് (1) എന്നീ കമാൻഡുകൾക്കു് ഉപയോഗിക്കുന്ന പാറ്റേണുകൾ അടുത്ത് വിഭാഗത്തെ വിവരിയ്ക്കുന്നു.

ഷെൽ പാറ്റേണുകൾ

ഒരു പാറ്റേൺ സാധാരണ പ്രതീകങ്ങൾ അടങ്ങിയ, സ്വയം പൊരുത്തപ്പെടുന്നതും മെറ്റാ-പ്രതീകങ്ങളുമായിരിക്കും. മെറ്റാ കഥാപാത്രങ്ങൾ `` `` "'' '??' '' '' '' '[' 'അവർ ഉദ്ധരിച്ചെങ്കിൽ ഈ പ്രതീകങ്ങൾ പ്രത്യേക അർഥം നഷ്ടപ്പെടും. കമാൻഡ് അല്ലെങ്കിൽ വേരിയബിൾ പകരം വയ്ക്കുകയും ഡോളർ ചിഹ്നങ്ങളോ വീണ്ടും ഉദ്ധരണികൾ ഇരട്ട ഉദ്ധരിക്കപ്പെടാതിരിക്കുകയും ചെയ്യുമ്പോൾ, ആജ്ഞയുടെ വേരിയബിളിന്റെ അല്ലെങ്കിൽ ഔട്ട്പുട്ടിന്റെ മൂല്യം ഈ പ്രതീകങ്ങൾക്കായി സ്കാൻ ചെയ്യുന്നു, അവ മെറ്റാ-പ്രതീകങ്ങളായി മാറുന്നു.

അക്ഷരങ്ങൾ ഏതെങ്കിലും സ്ട്രിംഗുമായി പൊരുത്തപ്പെടുന്ന ഒരു നക്ഷത്രചിഹ്നം (`` * ""). ഒരു പ്രതീകം ഒരു പ്രതീകവുമായി പൊരുത്തപ്പെടുന്നു. ഒരു ഇടത് ബ്രാക്കറ്റ് (`` [[") ഒരു പ്രതീക ക്ലാസ് അവതരിപ്പിക്കുന്നു. '' 'കാണുന്നില്ലെങ്കിൽ പ്രതീകങ്ങളുടെ ക്ലാസ് എൻഡ് (``]' '' സൂചിപ്പിക്കുന്നു) '' 'ഒരു പ്രതീക ക്ലാസ് അവതരിപ്പിക്കുന്നതിനു പകരം `` ഒരു പ്രതീക ക്ലാസ് ചതുര ബ്രാക്കറ്റുകൾക്കിടയിലുള്ള ഏത് പ്രതീകങ്ങളുമായി ചേർന്നു. ഒരു മൈനസ് ചിഹ്നത്തിലൂടെ ഒരു ശ്രേണി പ്രതീകം നൽകാം. കഥാപാത്രം ക്ലാസിന്റെ ആദ്യ പ്രതീകത്തിൽ ആശ്ചര്യചിഹ്നം ആംഗ്യമാക്കിക്കൊണ്ട് പ്രതീക ക്ലാസ് പരിപൂരകമായിരിക്കാം.

ഒരു പ്രതീക ക്ലാസിൽ ഒരു `` "ഉൾപ്പെടുത്താൻ, അത് ആദ്യം ലിസ്റ്റുചെയ്തിരിക്കുന്ന (` `എന്തെങ്കിലുമുണ്ടെങ്കിൽ '' കഴിഞ്ഞ്) ഉണ്ടാക്കുക. ഒരു ന്യൂന ചിഹ്നം ഉൾപ്പെടുത്തുന്നതിന്, അതിനെ ലിസ്റ്റുചെയ്ത ആദ്യ അല്ലെങ്കിൽ അവസാന പ്രതീകമാക്കുക

ബിൽറ്റിൻസ്

ഒരു പ്രത്യേക പ്രക്രിയയിൽ നിർവ്വഹിക്കാൻ കഴിയാത്ത ചില പ്രവർത്തനങ്ങൾ ചെയ്യേണ്ടതുള്ളതിനാൽ ബിൽഡിൻ കമാൻഡുകളെ ഈ വിഭാഗം പട്ടികപ്പെടുത്തുന്നു. ഇവയ്ക്കുപുറമെ, കാര്യക്ഷമതയ്ക്കായി (ഉദാഹരണത്തിനായി echo 1) മറ്റ് നിരവധി കമാൻഡുകൾ ഉണ്ട്.

:

0 (സത്യ) എക്സിറ്റ് മൂല്ല്യം തിരികെ നൽകുന്ന ഒരു നൾ കമാൻഡ്.

. ഫയൽ

ഫയലിൽ പറഞ്ഞിരിക്കുന്ന കമാൻഡുകൾ ഷെൽ വായിച്ച് എക്സിക്യൂട്ട് ചെയ്യുന്നു.

അപരനാമം [ പേര് [ = string ... ]]

Name = string വ്യക്തമാക്കിയിട്ടുണ്ടെങ്കിൽ, ഷെൽ മൂല്യം സ്ട്രിങുമായി alias നെയിം നിഷ്കർഷിക്കുന്നു. പേര് നൽകിയിരിക്കുന്നെങ്കിൽ, അപരനാമത്തിന്റെ മൂല്യം അച്ചടിക്കപ്പെടും. വാസ്തവങ്ങൾ ഇല്ലാതെ, എല്ലാ ബാക്കിയുള്ള അപരനാമങ്ങളുടെയും പേരുകളും മൂല്യങ്ങളും പ്രിറ്റിഗേറ്റു ചെയ്യുന്ന അണ്സിയോട് ( unalias കാണുക )

ബിഗ് [ ജോലി] ...

പശ്ചാത്തലത്തിൽ സൂചിപ്പിച്ച ജോലികൾ തുടരുക (അല്ലെങ്കിൽ ഒരു ജോലിയും നൽകിയില്ലെങ്കിൽ നിലവിലുള്ള ജോലി) തുടരുക.

കമാൻഡ് കമാൻഡ് ആർഗ ...

നിർദ്ദിഷ്ട ബിൽഡിൻ കമാൻഡ് നടപ്പിലാക്കുക. (നിങ്ങൾക്ക് ഒരു ബിൽഡ് കമാൻഡ് എന്ന പേരുള്ള ഷെൽ ഫങ്ഷൻ ഉപയോഗിക്കുമ്പോൾ ഇത് ഉപയോഗപ്പെടുന്നു.)

സിഡി [ ഡയറക്ടറി ]

നിർദ്ദിഷ്ട ഡയറക്ടറിയിലേക്ക് സ്വതവേയുള്ള ഡയറക്ടറി (സ്വതവേ $ $ HOME) മാറുക cp കമാന്ഡിൻറെ എൻവിറോൺമെൻറിൽ CDPATH ഒരു എൻട്രി ലഭ്യമാകുമ്പോൾ അല്ലെങ്കിൽ ഷെൽ വേരിയബിൾ CDPATH സജ്ജമാക്കുകയും ഡയറക്ടറി നാമം സ്ലാഷ് കൊണ്ട് ആരംഭിക്കാതിരിക്കുകയും ചെയ്താൽ CDPATH- ൽ ലിസ്റ്റ് ചെയ്ത ഡയറക്ടറികൾ തിരയുകയും ചെയ്യും നിർദ്ദിഷ്ട ഡയറക്ടറിയ്ക്കായി. CDPATH എന്നതിന്റെ ഫോർമാറ്റ് PATH- ന്റെ അതേ രീതിയാണ് . ഒരു ഇന്ററാക്ടീവ് ഷെല്ലിൽ, cd കമാൻഡ്, ഡയറക്ടറിയുടെ പേര് പ്രിന്റ് ചെയ്യുമ്പോൾ, ഉപയോക്താവ് നൽകിയ പേരിൽ നിന്ന് വ്യത്യസ്തമാണെങ്കിൽ അത് പ്രിന്റ് ചെയ്യുന്നു. CDPATH സംവിധാനം ഉപയോഗിച്ചതിനാലോ അല്ലെങ്കിൽ ഒരു പ്രതീകാത്മകമായ ലിങ്ക് മുറിച്ചുകടഞ്ഞതിനാലോ ഇത് ഒന്നുകിൽ വ്യത്യസ്തമായിരിക്കും.

eval string ...

സ്പെയ്സുകളുള്ള എല്ലാ ആർഗ്യുമെന്റുകളും ബന്ധിപ്പിക്കുക. പിന്നെ വീണ്ടും parse ചെയ്ത് കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യുക.

എക്സിക്യൂഷൻ [ കമാൻഡ് ആർഗ് ... ]

കമാൻഡ് ഒഴിവാക്കില്ലെങ്കിൽ, ഷെൽ പ്രോസസ് നിർദ്ദിഷ്ട പ്രോഗ്രാമിൽ നിന്നും മാറ്റിയിരിക്കും (ഇത് ഒരു യഥാർത്ഥ പ്രോഗ്രാം ആയിരിക്കണം, ഷെൽ ബിൽഡിൻ അല്ലെങ്കിൽ ഫങ്ഷൻ അല്ല). എക്സിക്യൂട്ട് കമാൻഡിലെ ഏതെങ്കിലും റിഡയറക്ടുകൾ സ്ഥിരമായതായി അടയാളപ്പെടുത്തിയിരിയ്ക്കുന്നു, അതുവഴി exec exec command മുതനം പൂർത്തിയായിട്ടില്ല.

പുറത്തുകടക്കുക [ exitstatus ]

ഷെൽ പ്രോസസ് അവസാനിപ്പിക്കുക. Exitstatus നൽകിയാൽ അത് ഷെല്ലിന്റെ എക്സിറ്റ് നിലയായി ഉപയോഗിക്കുന്നു. അല്ലെങ്കിൽ മുമ്പുള്ള കമാൻഡിലെ എക്സിറ്റ് നില ഉപയോഗിയ്ക്കുന്നു.

കയറ്റുമതി നാമം ...

കയറ്റുമതി-പേ

നിർദിഷ്ട പേരുകളുടെ പരിതസ്ഥിതിയിൽ പ്രത്യക്ഷപ്പെടുന്നതിനായി, നിർദ്ദിഷ്ട പേരുകൾ എക്സ്പോർട്ട് ചെയ്യുന്നു. ഒരു വേരിയബിളിനെ അൺ-എക്സ്പോർട്ടുചെയ്യാനുള്ള ഒരേയൊരു മാർഗ്ഗം അത് സജ്ജീകരിക്കാതിരിക്കുക എന്നതാണ്. ഷെൽ ഒരു വേരിയബിള് എപ്പോൾ സജ്ജമാക്കുമ്പോഴും എക്സ്പോർട്ട് ചെയ്യുന്നതിനായി സജ്ജമാക്കുന്നു

കയറ്റുമതി നാമം = മൂല്യം

ആർഗ്യുമെന്റുകളൊന്നും കൂടാതെ എക്സ്പോർട്ട് കമാൻഡ് എല്ലാ എക്സ്പോർട്ട് ചെയ്ത ചരങ്ങളുടെ പേരുകളും പട്ടികപ്പെടുത്തുന്നു. സൂചിപ്പിച്ചതു് -p ഐച്ഛികം നൽകിയിരിയ്ക്കുന്നതു്, ഔട്ട്പുട്ട് ആവർത്തിയ്ക്കാത്ത ഉപയോഗത്തിനു് ഫോർമാറ്റ് ചെയ്യുവാൻ സാധിയ്ക്കുന്നു.

fc [- e editor ] [ ആദ്യ [ അവസാന ]]

fc -l [- nr ] [ first [ last ]

fc -s [ പഴയ = പുതിയത് ] [ ആദ്യം ]

Fc builtin ലിസ്റ്റുകൾ, എഡിറ്റുകൾ, റീ-എക്സിക്യൂട്ടുകൾ, മുമ്പ് ഒരു ഇന്ററാക്ടീവ് ഷെല്ലിലേക്കുളള കമാൻഡുകൾ.

-e എഡിറ്റർ

കമാൻഡുകൾ എഡിറ്റുചെയ്യാൻ എഡിറ്റർ പേരുനൽകുന്ന എഡിറ്റർ ഉപയോഗിക്കുക. എഡിറ്റർ സ്ട്രിംഗ് എന്നത് കമാൻഡ് നെയിം ആണ്, പാത്ത് വേരിയബിൾ വഴി തിരയുന്നതാണ്. FCEDIT വേരിയബിളിന്റെ മൂല്യം സ്വതവേയുള്ളതായി ഉപയോഗിയ്ക്കുന്നു - e വ്യക്തമാക്കിയിട്ടില്ല. FCEDIT എന്നത് അസാധുവാണെങ്കിൽ അല്ലെങ്കിൽ സജ്ജമാക്കാതിരിക്കുകയാണെങ്കിൽ, EDITOR വേരിയബിളിന്റെ മൂല്യം ഉപയോഗിക്കുന്നു. എഡിറ്റർ അസാധുവാണോ അല്ലെങ്കിൽ സജ്ജമാക്കാതിരിക്കുകയാണെങ്കിൽ, എഡി (1) എഡിറ്ററായി ഉപയോഗിക്കുന്നു.

-l (ell)

അവയിൽ ഒരു എഡിറ്ററിനെ വിളിക്കുന്നതിനേക്കാൾ കമാൻഡുകൾ ലിസ്റ്റുചെയ്യുക. ഓരോ കമാന്ഡിനും കമാന്ഡ് നംബര് ഉപയോഗിച്ച് ഓരോ കമാന്ഡിനും ബാധകമാകുന്ന രീതിയില്, കമാന്ഡുകള് ആദ്യവും അവസാനത്തെ ഓപ്പറേറ്റുകളും സൂചിപ്പിക്കുന്ന ക്രമം എഴുതപ്പെടുന്നു.

-n

-l കൊണ്ട് പട്ടികപ്പെടുത്തുമ്പോൾ കമാൻഡ് നമ്പറുകൾ അടച്ചുപൂട്ടുക.

-ആർ

പട്ടികപ്പെടുത്തിയിരിക്കുന്ന കമാന്ഡുകങ്ങളുടെ ക്രമം (വിപരീതമായി അല്ലെങ്കില് എഡിറ്റുചെയ്തത് )

-s

ഒരു എഡിറ്റർ രേഖപ്പെടുത്താതെ കമാൻഡ് റീ-എക്സിക്യൂട്ട് ചെയ്യുക.

ആദ്യം

അവസാനത്തെ

പട്ടികപ്പെടുത്താനോ എഡിറ്റുചെയ്യാനോ കമാൻഡുകൾ തിരഞ്ഞെടുക്കുക. ആക്സസ് ചെയ്യാൻ കഴിയുന്ന മുമ്പത്തെ ആജ്ഞകളുടെ എണ്ണം നിർണ്ണയിക്കുന്നത് HISTSIZE വേരിയബിളിന്റെ മൂല്യം കൊണ്ടാണ് . ഒന്നോ അതിലധികമോ അവസാനത്തിന്റെ അല്ലെങ്കിൽ രണ്ട് മൂല്യങ്ങൾ താഴെ പറയുന്നതിൽ ഒന്ന് ആണ്:

[+] നമ്പർ

ഒരു കമാൻഡ് നമ്പർ പ്രതിനിധീകരിക്കുന്ന ഒരു പോസിറ്റീവ് സംഖ്യ; കമാൻഡ് നംബറുകൾ - l ഐച്ഛികത്തിനൊപ്പം കാണിക്കുന്നു.

-നമ്പർ

മുമ്പുള്ള ആജ്ഞകളുടെ എണ്ണം എക്സിക്യൂട്ട് ചെയ്ത ആജ്ഞയെ പ്രതിനിധീകരിക്കുന്ന ഒരു നെഗറ്റീവ് ദശാംശ സംഖ്യ. ഉദാഹരണമായി, -1 എന്നത് ഉടൻ മുമ്പത്തെ കമാൻഡ് ആണ്.

സ്ട്രിംഗ്

അടുത്തിടെ കൊടുത്ത കമാൻഡിനെ സൂചിപ്പിക്കുന്ന ഒരു സ്ട്രിംഗ് ആ സ്ട്രിംഗ് ഉപയോഗിച്ച് ആരംഭിക്കുന്നു. പഴയ = പുതിയ ഓപ്പറാൻഡ് വ്യക്തമാക്കാത്തപക്ഷം ആദ്യത്തെ ഒറിജിനലിന്റെ സ്ട്രിങ് ഫോം ഒരു ഉൾച്ചേർത്ത തുല്യമായ അടയാളം ഉൾക്കൊള്ളുന്നില്ല.

താഴെ പറയുന്ന എൻവയോൺമെൻറ് വേരിയബിളുകൾ എഫ്സി എക്സിക്യൂഷനെ ബാധിക്കുന്നു:

FCEDIT

ഉപയോഗിക്കുന്നതിനുള്ള എഡിറ്ററുടെ പേര്.

HISTSIZE

ആക്സസ് ചെയ്യാൻ കഴിയുന്ന മുമ്പത്തെ കമാൻഡുകളുടെ എണ്ണം.

fg [ ജോലി ]

നിർദിഷ്ട ജോലിയോ നിലവിലെ ജോലിയോ മുൻപിലേക്ക് നീക്കുക.

getopts optstring var

POSIX getopts കമാൻഡ്, Bell Labs -derived getopt (1) ഉപയോഗിച്ചു് കുഴപ്പമില്ല.

ആദ്യത്തെ ആർഗ്യുമെന്റ് അക്ഷരങ്ങളുടെ ഒരു ശ്രേണിയായിരിക്കണം, അതിലൊന്നുമില്ലാതെ ഓപ്ഷനുകൾ ഒരു ആർഗ്യുമെന്റ് ആവശ്യമാണെന്ന് സൂചിപ്പിക്കുന്നതിന് ഒരു കോളൺ തുടർന്ന് ഉപയോഗിക്കാം. വ്യക്തമാക്കിയ വേരിയൽ പാഴ്സഡ് ഓപ്ഷനിലേക്ക് സജ്ജമാക്കിയിരിയ്ക്കുന്നു.

വൈറ്റ്സ്പെയ്സ് അടങ്ങുന്ന ആർഗ്യുമെന്റുകളുടെ കൈകാര്യം ചെയ്യൽ കാരണം പഴയ getopt (1) പ്രയോഗം getopts കമാൻഡ് നീക്കം ചെയ്യുന്നു.

ഓപ്ഷനുകളും അവയുടെ ആർഗ്യുമെന്റുകളും പാരാമീറ്ററുകൾ പട്ടികയിൽ നിന്നും ലഭിക്കുന്നതിന് getopts builtin ഉപയോഗിച്ചേക്കാം. ഇൻക്ക്ക് ചെയ്തപ്പോൾ, getopts അടുത്ത ഓപ്ഷന്റെ മൂല്യത്തിൽ നിന്ന് സൂചിപ്പിച്ചിട്ടുള്ള ഷെൽ വേരിയബിളിന്റെ പട്ടികയിലെ ഓപ്ഷനിൽ നിന്നും സ്ട്രിങിൽ നിന്നും ഷെൽ വേരിയബിളിൽ സൂചിക സൂചിപ്പിക്കുന്നു OPTIND ഷെൽ പ്രവേശിക്കുമ്പോൾ, OPTIND ആരംഭിക്കുന്നു. ഓരോ ഓപ്ഷനിലും ഒരു വാദം, getopts builtin അത് ഷെൽ വേരിയബിളിൽ OPTARG ആയി സ്ഥാപിക്കും ഒപ്റ്റിമറിൽ ഓപ്ഷൻ അനുവദനീയമല്ലെങ്കിൽ OPTARG സജ്ജമാക്കിയില്ല.

തിരഞ്ഞെടുത്ത സ്ട്രിപ്പ് അക്ഷരങ്ങളുടെ ഒരു സ്ട്രിംഗാണ് optstring . ഒരു കലോണ് ഒരു കോളണാണെങ്കിൽ, ഒരു വൈറ്റ് സ്പെയ്സ് ഉപയോഗിച്ച് വേർപെടുത്തിയിരിക്കാം, അല്ലെങ്കിൽ അതിൽ നിന്നും വേർപെടുത്തിയിരിക്കാൻ സാധ്യതയുണ്ട്. ഒരു ഓപ്ഷൻ പ്രതീകം പ്രതീക്ഷിച്ചിടത്ത് കണ്ടെത്തിയില്ലെങ്കിൽ, getopts വേരിയബിൾ var നെ `? '' Getupts ആയി സജ്ജമാക്കും, പിന്നീട് OPTARG സജ്ജമാക്കുകയും സ്റ്റാൻഡേർഡ് തെറ്റുകൾക്ക് ഔട്ട്പുട്ട് എഴുതുകയും ചെയ്യും. എല്ലാ പിഴവുകളുടെയും ഒപ്റ്റിസ്റ്റിന്റെ ആദ്യ അക്ഷരമായി ഒരു കോളൺ വ്യക്തമാക്കുന്നത് ഒഴിവാക്കും.

അവസാന ഓപ്ഷൻ എത്തുമ്പോൾ ഒരു പൂജ്യം മൂല്യം മടക്കിനൽകുന്നു. ബാക്കിയുള്ള ആർഗ്യുമെന്റുകളൊന്നും ഇല്ലെങ്കിൽ, getopts പ്രത്യേക ഓപ്ഷനിലേക്ക് var ക്രമീകരിക്കും, `` അല്ലാത്തപക്ഷം ഇത് വെറും ``?

[A], b എന്നിവ, ഓപ്ഷനുകൾ [c] എന്നിവ ആർഗ്യുമെന്റ് ആവശ്യമുള്ള ഓപ്ഷനുകളുള്ള ആർഗ്യുമെന്റുകളെ എങ്ങനെ പ്രോസസ്സ് ചെയ്യാം എന്ന് താഴെ പറയുന്ന കോഡ് ഘടന കാണിക്കുന്നു.

getopts abc: f
ചെയ്യുക
കേസ് $ f ഇൻ
a | b) ഫ്ലാഗ് = $ f;
c) carg = $ OPTARG;
\?) echo $ USAGE; എക്സിറ്റ് 1;
esac
ചെയ്തു
shift `expr $ OPTIND - 1`

താഴെ പറയുന്ന ഏതെങ്കിലും തരത്തിൽ ഈ കോഡ് സ്വീകരിക്കും:

cmd -acart ഫയൽ ഫയൽ
cmd -a -c arg ഫയല് ഫയല്
cmd -carg-a ഫയല് ഫയല്
cmd -a -carg - ഫയൽ ഫയൽ

hash -rv കമാൻഡ് ...

ഷെൽ കമാൻഡുകളുടെ ലൊക്കേഷനുകൾ ഓർത്തുവയ്ക്കുന്ന ഒരു ഹാഷ് ടേബിൾ സൂക്ഷിക്കുന്നു. യാതൊരു വാദങ്ങളുമില്ലാതെ, hash കമാൻഡ് ഈ ടേബിളിന്റെ ഉള്ളടക്കങ്ങൾ പ്രിന്റ് ചെയ്യുന്നു. അവസാന cd കമാൻഡിനുശേഷം പരിശോധിക്കാത്ത എൻട്രികൾ നക്ഷത്രചിഹ്നത്താൽ അടയാളപ്പെടുത്തിയിരിയ്ക്കുന്നു; ഈ എൻട്രികൾ അസാധുവായിരിക്കാൻ സാധിക്കും.

ആർഗ്യുമെന്റുകൾ ഉപയോഗിച്ച്, ഹാഷ് കമാൻഡ് ഹാഷ് പട്ടികയിൽ നിന്നും നിഷ്കർഷിച്ചിരിയ്ക്കുന്നു (അവ പ്രവർത്തനമാണെങ്കിൽ) അവയെ കണ്ടുപിടിക്കുന്നു. --v ഐച്ഛികം ഉപയോഗിച്ചു്, അവ ലഭ്യമാകുന്ന ആജ്ഞകളുടെ സ്ഥാനങ്ങൾ ഹാഷ് പ്രിന്റ് ചെയ്യുന്നു. ഹാറ്ഡ് ടേബിളിലുള്ള എല്ലാ എൻട്രികളും ഫംഗ്ഷനുകൾ ഒഴികെ - r എന്ന ഓപ്ഷൻ ഹാഷ് കമാന്റിന് കാരണമാകുന്നു.

ജോലി

ജോലിയിലെ പ്രക്രിയകളുടെ പ്രോസസ് ഐഡി അച്ചടിക്കുക. തൊഴിൽ ആർഗ്യുമെന്റ് ഒഴിവാക്കിയിട്ടുണ്ടെങ്കിൽ, നിലവിലുള്ള ജോലി ഉപയോഗിക്കും.

ജോലികൾ

നിലവിലുള്ള ഷെൽ പ്രോസസിന്റെ കുട്ടികളിലുള്ള എല്ലാ പശ്ചാത്തല പ്രക്രിയകളും ഈ കമാൻഡ് പുറത്തു് നൽകുന്നു.

pwd

നിലവിലെ ഡയറക്ടറി അച്ചടിക്കുക. ബിൽഡ് കമാൻഡ് അതേ പേരിൽ പ്രോഗ്രാമിൽ നിന്നും വ്യത്യസ്തമായിരിക്കും, കാരണം ഓരോ തവണയും ഇത് റീകംപുട്ട് ചെയ്യുന്നതിന് പകരം നിലവിലുള്ള ഡയറക്ടറി ഓർത്തിരിക്കുന്ന ഓർമ്മക്കുറിപ്പ് ഓർക്കുന്നു. ഇത് വേഗത്തിൽ ചെയ്യുന്നു. എന്നിരുന്നാലും, നിലവിലുള്ള ഡയറക്ടറിയുടെ പേരു് മാറ്റുകയാണെങ്കിൽ, pwd- ന്റെ ബിൽഡിൻ പതിപ്പു് ഡയറക്ടറിയിലേക്കുള്ള പഴയ പേരു് പ്രിന്റ് ചെയ്യുന്നതിനുള്ള തുടരാം.

[- p പ്രോംപ്റ്റ് ] [- r ] വേരിയബിൾ ...

- p ഐച്ഛികം വ്യക്തമാക്കിയിട്ടുണ്ടെങ്കിൽ, പ്രോംപ്റ്റ് അച്ചടിച്ചാൽ സ്റ്റാൻഡേർഡ് ഇൻപുട്ട് ഒരു ടെർമിനലും. അപ്പോൾ സ്റ്റാൻഡേർഡ് ഇൻപുട്ടിൽ നിന്ന് ഒരു ലൈൻ റീഡ് ചെയ്യുന്നു. ട്രയിയിംഗ് പുത്തൻ ലൈൻ നിന്നും നീക്കി, മുകളിൽ വേർതിരിച്ചുള്ള വിഭാഗത്തിൽ വിവരിച്ചിരിക്കുന്നതുപോലെ ലൈൻ വിഭജിക്കപ്പെടും, കൂടാതെ കഷണങ്ങൾ വേരിയബിളുകൾക്ക് ക്രമീകരിക്കുകയും ചെയ്യും. കുറഞ്ഞത് ഒരു വേരിയബിനെ വ്യക്തമാക്കണം. വേരിയബിളേക്കാളും കൂടുതൽ കഷണങ്ങൾ ഉണ്ടെങ്കിൽ, ശേഷിക്കുന്ന ഭാഗങ്ങൾ (അവയെ വേർതിരിച്ചുകൊണ്ട് IFS ലെ പ്രതീകങ്ങൾക്കൊപ്പം) അവസാന വേരിയബിളായി നൽകിയിരിക്കുന്നു. കഷണങ്ങളേക്കാൾ കൂടുതൽ വേരിയബിളുകൾ ഉണ്ടെങ്കിൽ ബാക്കിയുള്ള വേരിയബിളുകൾ നൾ സ്ട്രിംഗ് നൽകും. EOF ഇൻപുട്ടിനെ നേരിടാത്തപക്ഷം വായിക്കുക ബിൽഡിൻ വിജയത്തെ സൂചിപ്പിക്കുന്നു, അതിൽ പരാജയപ്പെട്ടു.

സ്വതവേ, - r ഐച്ഛികം വ്യക്തമാക്കിയിട്ടില്ലെങ്കിൽ, ബാക്കലായി `` \ "" ഒരു എസ്കേപ്പ് പ്രതീകമായി പ്രവർത്തിക്കുന്നു, ഇത് താഴെപ്പറയുന്ന അക്ഷരം ഉപയോഗിച്ച് അക്ഷരാർത്ഥത്തിൽ നയിക്കുന്നു. ഒരു ബാക്കപ്പ് തുടർന്നാൽ ഒരു പുതിയ ലൈനിൽ, ബാക്കപ്പ് ആൻഡ് ന്യൂസ്ലൈൻ ഇല്ലാതാക്കപ്പെടും.

വായന മാത്രം നാമം ...

വായന മാത്രം -p

നിർദ്ദിഷ്ട പേരുകൾ വായിച്ചറിയാൻ മാത്രം അടയാളപ്പെടുത്തുന്നു, അതിനാൽ അവ പിന്നീട് പരിഷ്കരിക്കാനോ സജ്ജീകരിക്കാനോ കഴിയില്ല. ഷെൽ ഒരു വേരിയബിളിന്റെ വില നിശ്ചയിക്കുന്ന സമയത്തു് എഴുതുമ്പോൾ മാത്രം വായിക്കുവാൻ സാധിയ്ക്കുന്നു

വായന മാത്രം നാമം = മൂല്യം

ആർഗ്യുമെന്റുകൾ ഇല്ലാതെ വായന മാത്രം കമാൻഡ് എല്ലാ വായന മാത്രം വേരിയബിളിന്റെ പേരുകൾ പട്ടികപ്പെടുത്തുന്നു. സൂചിപ്പിച്ചതു് -p ഐച്ഛികം നൽകിയിരിയ്ക്കുന്നതു്, ഔട്ട്പുട്ട് ആവർത്തിയ്ക്കാത്ത ഉപയോഗത്തിനു് ഫോർമാറ്റ് ചെയ്യുവാൻ സാധിയ്ക്കുന്നു.

സജ്ജീകരിക്കുക [{- options | + ഓപ്ഷനുകൾ | - ആർഗ് ... ]

Set കമാൻഡ് മൂന്ന് വ്യത്യസ്തമായ ഫങ്ഷനുകൾ ചെയ്യുന്നു.

ആർഗ്യുമെന്റുകൾ ഇല്ലാതെ, എല്ലാ ഷെൽ വേരിയബിളുകളുടേയും മൂല്യങ്ങൾ പട്ടികപ്പെടുത്തുന്നു.

ഓപ്ഷനുകൾ നൽകിയിട്ടുണ്ടെങ്കിൽ, അത് നിർദ്ദിഷ്ട ഓപ്ഷൻ ഫ്ലാഗുകൾ സജ്ജമാക്കുന്നു, അല്ലെങ്കിൽ Sx ആർഗ്യുമെന്റ് ലിസ്റ്റിംഗ് പ്രൊസസ്സിങ് എന്ന വിഭാഗത്തിൽ വിവരിച്ചപോലെ അവയെ ക്ലിയർ ചെയ്യുന്നു.

നിശ്ചിത ആർഗുകളിലേക്കുള്ള ഷെല്ലിന്റെ പോസിഷണൽ പരാമീറ്ററുകളുടെ മൂല്ല്യങ്ങൾ സജ്ജമാക്കുക എന്നതാണ് സെറ്റ് കമാൻഡിന്റെ മൂന്നാമത്തെ ഉപയോഗം. ഏതെങ്കിലും ഓപ്ഷനുകളൊന്നും മാറ്റാതെതന്നെ സാന്ദർഭിക പരാമീറ്ററുകൾ മാറ്റുന്നതിനായി, സജ്ജമാക്കാൻ ആദ്യത്തെ ആർഗ്യുമെന്റായി `` - `ഉപയോഗിക്കുക. ആർഗ്യുമെന്റുകളൊന്നും ഇല്ലെങ്കിൽ, സെറ്റ് കമാൻഡ് എല്ലാ positional പാരാമീറ്ററുകളും (' shift $ #' എക്സിക്യൂട്ട് ചെയ്യുന്നതിന് തുല്യമാണ്)

വേരിയബിൾ മൂല്യം

വേരിയബിളിന് മൂല്യം നൽകുന്നു. (സാധാരണയായി, സെറ്റ്വാർ സെറ്റ്വാർ ഉപയോഗിക്കുന്നതിനേക്കാൾ വേരിയബിൾ = മൂല്യം എഴുതുന്നത് നല്ലത്, അതിന്റെ പേരുകളായി പാരാമീറ്ററുകൾ പാസ്സാക്കപ്പെടുന്ന വേരിയബിളുകൾക്ക് മൂല്യങ്ങൾ നൽകുന്നതിന് ഉദ്ദേശിക്കുന്നു.)

shift [ n ]

സ്ഥാനസ്ഥിതി പരാമീറ്ററുകൾ n തവണ മാറ്റുക. ഒരു ഷിഫ്റ്റ് $ 1 എന്ന മൂല്യത്തിന്റെ $ 2 മൂല്യമായി $ 2 മൂല്യമായി $ 3 മൂല്യമായി മാറ്റി, അങ്ങനെ $ 1 ന്റെ മൂല്യം കുറയുന്നു. Positional പരാമീറ്ററുകളുടെ എണ്ണത്തേക്കാൾ കൂടുതലാണെങ്കിൽ, shift ഒരു പിശക് സന്ദേശം പുറപ്പെടുവിക്കുകയും തിരിച്ചു വരുന്ന നില ഉപയോഗിച്ച് പുറത്തുകടക്കുകയും ചെയ്യും.

തവണ

ഷെല്ലിനുള്ള സഞ്ചിത യൂസർ, സിസ്റ്റം ടൈമുകൾ ഷെല്ലിൽ നിന്നും പ്രവർത്തിപ്പിക്കുന്ന പ്രക്രിയകൾ എന്നിവ പ്രിന്റ് ചെയ്യുക. റിട്ടേൺ സ്ഥിതി 0 ആണ്.

ട്രാപ് ആക്ഷൻ സിഗ്നൽ ...

നിർദ്ദിഷ്ട സിഗ്നലുകൾ ലഭിക്കുമ്പോൾ പ്രവർത്തനം വിശകലനം ചെയ്ത് പ്രവർത്തിപ്പിക്കുന്നതിന് ഷെൽ ഉപയോഗിക്കുക. സിഗ്നൽ നമ്പർ ഉപയോഗിച്ച് സിഗ്നലുകൾ നിർണ്ണയിക്കുന്നു. സിഗ്നൽ 0 ആണെങ്കിൽ ഷെൽ പുറത്തുകടക്കുമ്പോൾ പ്രവർത്തനം നടപ്പിലാക്കും. പ്രവർത്തനം പൂജ്യം ആകാം അല്ലെങ്കിൽ `` - "മുൻ നിർദ്ദേശിക്കുന്ന സിഗ്നലിനെ അവഗണിക്കുകയും, രണ്ടാമത് സ്ഥിര പ്രവർത്തനം നടത്തുകയും ചെയ്യുന്നു. ഷെൽ ഒരു സബ്ഷെൽ ഉപേക്ഷിയ്ക്കുമ്പോൾ, അത് വീണ്ടും ലഭ്യമാക്കുന്നു (പക്ഷേ അവഗണിക്കപ്പെടുന്നില്ല) സിഗ്നലുകൾ സ്ഥിര പ്രവർത്തനത്തിലേയ്ക്കു് നയിക്കുന്നു. ഷെല്ലിലേക്കുള്ള പ്രവേശനത്തിനു് അവഗണിക്കപ്പെട്ട സിഗ്നലുകളിൽ ട്രാപ് കമാൻഡ് ഫലപ്രദമാണു്.

ടൈപ്പുചെയ്യുക [ പേര് ... ]

കമാണ്ട് ആയി ഓരോ പേരേയും വ്യാഖ്യാനിച്ച് കമാൻഡ് സെർച്ച് റിസല്യൂട്ട് പ്രിന്റ് ചെയ്യുക. സാധ്യമായ പരിഹാരങ്ങൾ: ഷെൽ കീവേഡ്, അപരനാമം, ഷെൽ ബിൽഡിൻ , കമാൻഡ്, ട്രാക്കുചെയ്ത അപരനാമം, കണ്ടെത്തിയില്ല. അപര്യാപ്തതയ്ക്ക് പകരം അപരനാമം വിപുലീകരിക്കപ്പെടുന്നു. കമാന്ഡുകള്ക്കും ട്രാക്ക് ചെയ്ത aliases നും കമാന്ഡിന്റെ പൂര്ണ്ണ പാത്ത് നെയിം പ്രിന്റുചെയ്യുന്നു.

Ulimimit [- H-S ] [- a -tfdscmlpn [ value ]]

പ്രക്രിയകളെക്കുറിച്ച് അന്വേഷിക്കുക അല്ലെങ്കിൽ പുതിയ കമ്പ്യൂട്ടർ പരിധി നിർണ്ണയിക്കുകയോ പുതിയ പരിധി സജ്ജീകരിക്കുകയോ ചെയ്യുക. ഹാർഡ് പരിധി (ഏത് പ്രക്രിയയും ലംഘിക്കപ്പെടാൻ അനുവദിക്കില്ല, അത് കുറഞ്ഞു കഴിഞ്ഞാൽ പുനരാരംഭിക്കാൻ പാടില്ല), മൃദു പരിധി (പ്രോസസ്സ് സിഗ്നലിനെ അടയാളപ്പെടുത്തുകയല്ല, മറിച്ച് ഉയർത്തിയേക്കാവുന്നതോ അല്ല) ഈ പതാകകൾ:

-H

ക്രമീകരിക്കുക അല്ലെങ്കിൽ ഹാർഡ് പരിധികളെക്കുറിച്ച് അന്വേഷിക്കുക

-S

സെറ്റ് ചെയ്യുക അല്ലെങ്കിൽ സോഫ്റ്റ് limits കുറിച്ച് അന്വേഷിക്കുക. എ എച്ച് ആണോ - എസ് വ്യക്തമാക്കാതിരുന്നാൽ, മൃദു പരിധി പ്രദർശിപ്പിക്കാം അല്ലെങ്കിൽ രണ്ട് പരിധി സജ്ജീകരിച്ചിരിക്കുന്നു. രണ്ടും പറഞ്ഞിട്ടുണ്ടെങ്കിൽ, അവസാനത്തേത് വിജയിക്കുന്നു.

ചോദ്യം ചെയ്യുവാനുള്ള പരിധി അല്ലെങ്കിൽ സജ്ജമാക്കിയാൽ, ഈ ഫ്ലാഗുകളിൽ ഏതെങ്കിലും ഒരെണ്ണം വ്യക്തമാക്കിയുകൊണ്ട് തിരഞ്ഞെടുക്കുന്നു:

-a

നിലവിലുള്ള എല്ലാ പരിധികളെയും കാണിക്കുക

-t

CPU സമയത്തെ പരിധി കാണിയ്ക്കുകയോ സജ്ജമാക്കുകയോ ചെയ്യുക (സെക്കൻഡുകളിൽ)

-f

(512-ബൈറ്റ് ബ്ലോക്കുകളിൽ) സൃഷ്ടിക്കാൻ കഴിയുന്ന ഏറ്റവും വലിയ ഫയലിലെ പരിധി കാണിക്കുകയോ പരിധി സജ്ജമാക്കുകയോ ചെയ്യുക

-d

ഒരു പ്രോസസിന്റെ ഡാറ്റ സെഗ്മെൻറ് വലുപ്പത്തിൽ കാണിക്കാനോ അല്ലെങ്കിൽ ഒരു പരിധി നിശ്ചയിക്കാനോ (കിലോബൈറ്റിൽ)

-s

ഒരു പ്രക്രിയയുടെ സ്റ്റാക്ക് വ്യാപ്തിയിൽ കാണിക്കുക (അല്ലെങ്കിൽ കിലോബൈറ്റിൽ)

-c

(512-ബൈറ്റ് ബ്ളോക്കുകളിൽ) നിർമ്മിക്കാവുന്ന ഏറ്റവും വലിയ കോർ ഡംപ് വലുപ്പത്തെ കാണിക്കാനോ അല്ലെങ്കിൽ സജ്ജീകരിക്കാനോ

-m

ഒരു പ്രക്രിയയ്ക്കു് ഉപയോഗിയ്ക്കുവാൻ സാധിയ്ക്കുന്ന മൊത്തം ഫിസിക്കൽ മെമ്മറിയുടെ അളവുകൾ കാണിയ്ക്കുകയോ വിർചമാക്കുകയോ ചെയ്യുക

-l

(2) ( കിലോബൈറ്റിൽ ) ഒരു പ്രക്രിയ മെലോക്ക് ഉപയോഗിച്ച് ലോക്ക് ചെയ്യാൻ എത്ര മെമ്മറി കാണിക്കുന്നു അല്ലെങ്കിൽ സജ്ജീകരിക്കുക

-p

ഈ ഉപയോക്താവിന് ഒരു സമയം വേണമെങ്കിൽ പ്രക്രിയകളുടെ എണ്ണത്തിൽ പരിധി കാണിക്കുകയോ പരിധി നിശ്ചയിക്കുകയോ ചെയ്യുക

-n

ഒരു പ്രക്രിയ തുറക്കാൻ കഴിയാവുന്ന നമ്പർ ഫയലുകളിൽ പരിധി കാണിക്കുകയോ പരിധി നിശ്ചയിക്കുകയോ ചെയ്യുക

ഇവയിൽ ഒന്നും വ്യക്തമാക്കിയിട്ടില്ലെങ്കിൽ, കാണിക്കുന്ന അല്ലെങ്കിൽ സജ്ജമാക്കിയ ഫയൽ വലുപ്പത്തിലുള്ള പരിധിയാണു്. മൂല്യം വ്യക്തമാക്കിയിട്ടുണ്ടെങ്കിൽ, പരിധി ആ നമ്പറിലേക്ക് സജ്ജമാക്കിയിട്ടുണ്ട്; അല്ലെങ്കിൽ നിലവിലുള്ള പരിധി പ്രദർശിപ്പിക്കും.

അനിയന്ത്രിതമായ പ്രക്രിയയുടെ പരിമിതികൾ sysctl (8) പ്രയോഗം ഉപയോഗിയ്ക്കാം അല്ലെങ്കിൽ സജ്ജമാക്കാം.

umask [ mask ]

നിശ്ചിത ഒക്ടൽ മൂല്യത്തിലേക്ക് umask ന്റെ മൂല്യം (umask (2) കാണുക. ആർഗ്യുമെന്റ് ഒഴിവാക്കിയിട്ടുണ്ടെങ്കിൽ, umask മൂല്യം അച്ചടിക്കും.

unalias [- a ] [ പേര് ]

പേര് നൽകിയിട്ടുണ്ടെങ്കിൽ, ഷെൽ ആ alias നീക്കം ചെയ്യുന്നു. - വ്യക്തമാക്കിയിട്ടുണ്ടെങ്കിൽ, എല്ലാ അപരനാമങ്ങളും നീക്കംചെയ്യുന്നു.

പേര് സജ്ജീകരിക്കരുത് ...

നിർദ്ദിഷ്ട വേരിയബിളും ഫംഗ്ഷനും അൺസെറ്റ് ചെയ്യപ്പെടാതെ, തുറക്കപ്പെട്ടിട്ടില്ല. ഒരു നിശ്ചിത പേര് ഒരു വേരിയബിളും ഒരു ഫങ്ഷനും ആണെങ്കിൽ, വേരിയബിളും ഫംഗ്ഷനും ഒന്നും സജ്ജീകരിച്ചിട്ടില്ല.

കാത്തിരിക്കുക [ ജോലി ]

നിർദിഷ്ട ജോലിയുടെ പൂർത്തീകരണം പൂർത്തിയാകുകയും ജോലിയിലെ അവസാന പ്രക്രിയയുടെ എക്സിറ്റ് സ്റ്റാറ്റസ് തിരികെ നൽകുകയും ചെയ്യുക. ആർഗ്യുമെന്റ് ഒഴിവാക്കിയിട്ടുണ്ടെങ്കിൽ, എല്ലാ ജോലികളും പൂർത്തിയാക്കാനും പൂജ്യം എക്സിറ്റ് നില തിരികെ നൽകാനും കാത്തിരിക്കുക.

കമാൻഡ് ലൈൻ എഡിറ്റിംഗ്

Sh ഒരു ടെർമിനലിൽ നിന്നും ഇന്ററാക്ടീവായി ഉപയോഗിക്കുമ്പോൾ, നിലവിലുള്ള കമാൻഡും കമാൻഡ് ഹിസ്റ്ററിയും (fx ൽ sx ബിൽറ്റിൻസിൽ കാണുക) vi-mode കമാൻഡ്-ലൈൻ എഡിറ്റിങ് ഉപയോഗിച്ച് എഡിറ്റ് ചെയ്യാം. Vi മാൻ താളിൽ വിശദീകരിച്ചിരിയ്ക്കുന്ന ഒരു ഉപസെറ്റ് പോലെ, താഴെ പറഞ്ഞിരിയ്ക്കുന്ന കമാൻഡുകൾ ഈ മോഡ് ഉപയോഗിക്കുന്നു. കമാൻഡ് `സെറ്റ് '-o vi vi- മോഡ് എഡിറ്റിങ് സജ്ജമാക്കുന്നു. വൈ-മോഡ് സജ്ജമാക്കിയാൽ, ഷോൾ മോഡ്, കമാൻഡ് മോഡ് എന്നിവയ്ക്കിടയിൽ ഷൂട്ട് ചെയ്യാൻ കഴിയും. എഡിറ്റർ ഇവിടെ പൂർണ്ണമായി വിവരിച്ചിട്ടില്ല, പക്ഷേ പിന്നീടുള്ള ഒരു ഡോക്യുമെന്റിൽ ഉണ്ടാകും. ഇത് vi- യ്ക്ക് സമാനമാണ്: Aq ESC ടൈപ്പ് ചെയ്യുന്നത് കമാൻഡ് VI ആജ്ഞ കമാൻഡ് മോഡിലേക്ക് എത്തും. കമാൻഡ് മോഡിൽ എക്ക് റിട്ടേൺ അമർത്തുന്നത് ഷെല്ലിലേക്ക് ലൈൻ കടന്നുപോകും.

പ്രധാനപ്പെട്ടതു്: നിങ്ങളുടെ കംപ്യൂട്ടറിൽ എങ്ങനെയാണ് കമാൻഡ് ഉപയോഗിക്കേണ്ടത് എന്ന് കാണുവാൻ man command ( % man ) ഉപയോഗിക്കുക.