ലിനക്സ് ഷെല്ലും അടിസ്ഥാന ഷെൽ സ്ക്രിപ്റ്റിംഗ് ഭാഷാ നുറുങ്ങുകളും മനസ്സിലാക്കുക - ഭാഗം I


ചിത്രം വാക്കുകളേക്കാൾ കൂടുതൽ സംസാരിക്കുന്നു, ചുവടെയുള്ള ചിത്രം ലിനക്സിന്റെ പ്രവർത്തനത്തെക്കുറിച്ച് എല്ലാം പറയുന്നു.

  1. ഷെൽ പ്രോഗ്രാമിംഗ് പഠിക്കാനുള്ള 5 ഷെൽ സ്ക്രിപ്റ്റുകൾ - ഭാഗം II
  2. ലിനക്സ് ബാഷ് സ്ക്രിപ്റ്റിംഗിന്റെ ലോകത്തിലൂടെയുള്ള യാത്ര - ഭാഗം III

Linux Shell മനസ്സിലാക്കുന്നു

  1. ഷെൽ: ഒരു ഉപയോക്താവിനെ ഓപ്പറേറ്റിംഗ് സിസ്റ്റവുമായി ബന്ധിപ്പിക്കുന്ന ഒരു കമാൻഡ്-ലൈൻ ഇന്റർപ്രെറ്റർ, കമാൻഡുകൾ അല്ലെങ്കിൽ ടെക്സ്റ്റ് സ്ക്രിപ്റ്റ് സൃഷ്uടിക്കുന്നതിലൂടെ അത് നടപ്പിലാക്കാൻ അനുവദിക്കുന്നു.
  2. പ്രോസസ്സ്: ഒരു ഉപയോക്താവ് സിസ്റ്റത്തിൽ പ്രവർത്തിപ്പിക്കുന്ന ഏതൊരു ജോലിയെയും ഒരു പ്രോസസ്സ് എന്ന് വിളിക്കുന്നു. ഒരു പ്രക്രിയ ഒരു ടാസ്uക്കിനെക്കാൾ സങ്കീർണ്ണമാണ്.
  3. ഫയൽ: ഇത് ഹാർഡ് ഡിസ്കിൽ (hdd) വസിക്കുന്നു കൂടാതെ ഒരു ഉപയോക്താവിന്റെ ഉടമസ്ഥതയിലുള്ള ഡാറ്റ അടങ്ങിയിരിക്കുന്നു.
  4. X-windows aka windows: ലിനക്uസിന്റെ ഒരു മോഡ്, സ്uക്രീൻ (മോണിറ്റർ) വിൻഡോകൾ എന്ന് വിളിക്കപ്പെടുന്ന ചെറിയ ഭാഗങ്ങളായി വിഭജിക്കാനാകും, അത് ഒരു ഉപയോക്താവിനെ ഒരേ സമയം നിരവധി കാര്യങ്ങൾ ചെയ്യാനും കൂടാതെ/അല്ലെങ്കിൽ ഒരു ടാസ്ക്കിൽ നിന്ന് മറ്റൊന്നിലേക്ക് മാറാനും അനുവദിക്കുന്നു. എളുപ്പത്തിൽ ഒപ്പം ഗ്രാഫിക്uസ് മനോഹരമായ രീതിയിൽ കാണുക.
  5. ടെക്uസ്uറ്റ് ടെർമിനൽ: ഗ്രാഫിക്uസോ അടിസ്ഥാന ഗ്രാഫിക്uസ് ഡിസ്uപ്ലേയോ ഇല്ലാത്ത, ടെക്uസ്uറ്റ് സ്റ്റഫ് പ്രദർശിപ്പിക്കാനുള്ള കഴിവ് മാത്രമുള്ള ഒരു മോണിറ്റർ.
  6. സെഷൻ: സിസ്റ്റത്തിൽ നിന്ന് ലോഗിൻ ചെയ്യുന്നതിനും ലോഗ് ഔട്ട് ചെയ്യുന്നതിനും ഇടയിലുള്ള സമയം.

ഒരു സാധാരണ ലിനക്സ് വിതരണത്തിലെ ഷെല്ലിന്റെ തരങ്ങൾ

ബോൺ ഷെൽ: ആദ്യകാല പതിപ്പുകളിൽ ഉപയോഗിച്ചിരുന്ന പ്രധാന ഷെല്ലുകളിൽ ഒന്നാണ് ബോൺ ഷെൽ, ഇത് ഒരു യഥാർത്ഥ നിലവാരമായി മാറി. ബെൽ ലാബ്uസിൽ സ്റ്റീഫൻ ബോൺ ആണ് ഇത് എഴുതിയത്. എല്ലാ Unix-പോലുള്ള സിസ്റ്റത്തിനും ബോൺ ഷെല്ലുമായി പൊരുത്തപ്പെടുന്ന ഒരു ഷെല്ലെങ്കിലും ഉണ്ട്. ബോൺ ഷെൽ പ്രോഗ്രാമിന്റെ പേര് sh ആണ്, ഇത് സാധാരണയായി ഫയൽ സിസ്റ്റം ശ്രേണിയിൽ /bin/sh-ൽ സ്ഥിതി ചെയ്യുന്നു.

സി ഷെൽ: ബെർക്ക്uലി സോഫ്റ്റ്uവെയർ വിതരണത്തിനായി ബിൽ ജോയ് ആണ് സി ഷെൽ വികസിപ്പിച്ചത്. സി പ്രോഗ്രാമിംഗ് ഭാഷയുടെ മാതൃകയിലാണ് ഇതിന്റെ വാക്യഘടന രൂപപ്പെടുത്തിയിരിക്കുന്നത്. ഇത് പ്രാഥമികമായി ഇന്ററാക്ടീവ് ടെർമിനൽ ഉപയോഗത്തിന് ഉപയോഗിക്കുന്നു, എന്നാൽ സ്ക്രിപ്റ്റിംഗിനും ഓപ്പറേറ്റിംഗ് സിസ്റ്റം നിയന്ത്രണത്തിനും ഇത് കുറവാണ്. സി ഷെല്ലിന് നിരവധി ഇന്ററാക്ടീവ് കമാൻഡുകൾ ഉണ്ട്.

രസകരമായ തുടക്കം! (ലിനക്സ് ഷെൽ)

കമാൻഡ്-ലൈൻ ഉപയോക്താവിനായി ആയിരക്കണക്കിന് കമാൻഡുകൾ നിലവിലുണ്ട്, അവയെല്ലാം എങ്ങനെ ഓർക്കാം? ഹും! ലളിതമായി നിങ്ങൾക്ക് കഴിയില്ല. കമ്പ്യൂട്ടറിന്റെ യഥാർത്ഥ ശക്തി നിങ്ങളുടെ ജോലി എളുപ്പമാക്കുക എന്നതാണ്, നിങ്ങൾ പ്രക്രിയ ഓട്ടോമേറ്റ് ചെയ്യേണ്ടതുണ്ട്, അതിനാൽ നിങ്ങൾക്ക് സ്ക്രിപ്റ്റുകൾ ആവശ്യമാണ്.

ഒരു ഫയലിൽ സംഭരിച്ചിരിക്കുന്ന കമാൻഡുകളുടെ ശേഖരമാണ് സ്ക്രിപ്റ്റുകൾ. ഷെല്ലിന് ഈ ഫയൽ വായിക്കാനും കീബോർഡിൽ ടൈപ്പ് ചെയ്യുന്നതുപോലെ കമാൻഡുകൾ പ്രവർത്തിക്കാനും കഴിയും. സ്ക്രിപ്റ്റുകൾ ശരിക്കും ശക്തമാക്കുന്നതിന് ഷെൽ വിവിധ ഉപയോഗപ്രദമായ പ്രോഗ്രാമിംഗ് സവിശേഷതകളും നൽകുന്നു.

ഷെൽ പ്രോഗ്രാമിംഗിന്റെ അടിസ്ഥാനകാര്യങ്ങൾ

  1. ഒരു Linux ഷെൽ ലഭിക്കാൻ, നിങ്ങൾ ഒരു ടെർമിനൽ ആരംഭിക്കേണ്ടതുണ്ട്.
  2. നിങ്ങളുടെ കൈവശം ഉള്ള ഷെൽ എന്താണെന്ന് കാണാൻ, റൺ ചെയ്യുക: echo $SHELL.
  3. ലിനക്സിൽ, ഡോളർ ചിഹ്നം ($) ഒരു ഷെൽ വേരിയബിളിനെ സൂചിപ്പിക്കുന്നു.
  4. നിങ്ങൾ ടൈപ്പ് ചെയ്യുന്നതെന്തും ‘echo’ കമാൻഡ് തിരികെ നൽകുന്നു.
  5. പൈപ്പ്uലൈൻ നിർദ്ദേശം (|) രക്ഷാപ്രവർത്തനത്തിലേക്ക് വരുന്നു, നിരവധി കമാൻഡുകൾ ചെയിൻ ചെയ്യുമ്പോൾ.
  6. Linux കമാൻഡുകൾക്ക് അവരുടേതായ വാക്യഘടനയുണ്ട്, തെറ്റുകൾ എന്തുതന്നെയായാലും Linux നിങ്ങളോട് ക്ഷമിക്കില്ല. നിങ്ങൾക്ക് ഒരു കമാൻഡ് തെറ്റായി ലഭിക്കുകയാണെങ്കിൽ, നിങ്ങൾ ഒന്നും പിഴുതെറിയുകയോ കേടുവരുത്തുകയോ ചെയ്യില്ല, പക്ഷേ അത് പ്രവർത്തിക്കില്ല.
  7. #!/bin/sh - ഇതിനെ ഷെബാംഗ് എന്ന് വിളിക്കുന്നു. ഇത് ഒരു ഷെൽ സ്uക്രിപ്റ്റിന്റെ മുകളിൽ എഴുതുകയും അത് /bin/sh പ്രോഗ്രാമിലേക്ക് നിർദ്ദേശങ്ങൾ കൈമാറുകയും ചെയ്യുന്നു.

ഷെൽ സ്ക്രിപ്റ്റിനെക്കുറിച്ച്

ഷെൽ സ്uക്രിപ്റ്റ് എന്നത് എക്uസിക്യൂട്ടബിൾ അനുമതിയുള്ള “.sh” വിപുലീകരണമുള്ള ഒരു ലളിതമായ ടെക്uസ്uറ്റ് ഫയൽ മാത്രമാണ്.

  1. ടെർമിനൽ തുറക്കുക.
  2. ‘cd’ കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾ സ്uക്രിപ്റ്റ് സൃഷ്uടിക്കാൻ ആഗ്രഹിക്കുന്ന സ്ഥലത്തേക്ക് നാവിഗേറ്റ് ചെയ്യുക.
  3. Cd (enter) [ഇത് നിങ്ങളുടെ ഹോം ഡയറക്ടറിയിൽ പ്രോംപ്റ്റ് കൊണ്ടുവരും].
  4. hello.sh സ്പർശിക്കുക (ഇവിടെ ഞങ്ങൾ സ്ക്രിപ്റ്റിന് ഹലോ എന്ന് പേരിട്ടു, ‘.sh’ വിപുലീകരണം നിർബന്ധമാണെന്ന് ഓർക്കുക).
  5. vi hello.sh (nano hello.sh) [സ്ക്രിപ്റ്റ് എഡിറ്റ് ചെയ്യാൻ നിങ്ങളുടെ പ്രിയപ്പെട്ട എഡിറ്റർ ഉപയോഗിക്കാം].
  6. chmod 744 hello.sh (സ്ക്രിപ്റ്റ് എക്സിക്യൂട്ടബിൾ ആക്കുന്നു).
  7. sh hello.sh അല്ലെങ്കിൽ ./hello.sh (സ്ക്രിപ്റ്റ് പ്രവർത്തിപ്പിക്കുന്നു)

#!/bin/bash
# My first script

echo "Hello World!"

മുകളിലെ വരികൾ ഒരു ടെക്സ്റ്റ് ഫയലിൽ സേവ് ചെയ്യുക, അത് എക്സിക്യൂട്ടബിൾ ആക്കുക, മുകളിൽ വിവരിച്ചതുപോലെ പ്രവർത്തിപ്പിക്കുക.

Hello World!

മുകളിലെ കോഡിൽ.

#!/bin/bash (is the shebang.)
# My first script (is comment, anything following '#' is a comment)
echo “Hello World!” (is the main part of this script)

അടുത്ത സ്uക്രിപ്uറ്റിലേക്ക് നീങ്ങാനുള്ള സമയമായി. ഈ സ്ക്രിപ്റ്റ് നിങ്ങളോട് പറയും, നിങ്ങളുടെ ഉപയോക്തൃനാമം കൂടാതെ പ്രവർത്തിക്കുന്ന പ്രക്രിയകൾ ലിസ്റ്റ് ചെയ്യും.

#! /bin/bash
echo "Hello $USER"
echo "Hey i am" $USER "and will be telling you about the current processes"
echo "Running processes List"
ps

മുകളിലുള്ള കോഡുകൾ ഉപയോഗിച്ച് ഒരു ഫയൽ സൃഷ്uടിക്കുക, നിങ്ങൾക്കാവശ്യമുള്ള എന്തിനിലേക്കും അത് സംരക്ഷിക്കുക, എന്നാൽ .sh എന്ന വിപുലീകരണത്തോടെ, അത് എക്സിക്യൂട്ടബിൾ ആക്കി നിങ്ങളുടെ ടെർമിനലിൽ നിന്ന് പ്രവർത്തിപ്പിക്കുക.

Hello tecmint
Hey i am tecmint and will be telling you about the current processes
Running processes List
  PID TTY          TIME CMD
 1111 pts/0    00:00:00 bash
 1287 pts/0    00:00:00 sh
 1288 pts/0    00:00:00 ps

ഇത് രസകരമായിരുന്നോ? സ്ക്രിപ്റ്റ് എഴുതുന്നത് ഒരു ആശയം നേടുന്നതും പൈപ്പ്ലൈൻ കമാൻഡുകൾ എഴുതുന്നതും പോലെ ലളിതമാണ്. ചില നിയന്ത്രണങ്ങളും ഉണ്ട്. സംക്ഷിപ്ത ഫയൽസിസ്റ്റം പ്രവർത്തനങ്ങൾക്കും പൈപ്പുകൾ വഴിയുള്ള ഫിൽട്ടറുകളിലും കമാൻഡ് ലൈൻ ടൂളുകളിലും നിലവിലുള്ള പ്രവർത്തനങ്ങളുടെ സംയോജനം സ്ക്രിപ്റ്റ് ചെയ്യുന്നതിനും ഷെൽ സ്ക്രിപ്റ്റുകൾ മികച്ചതാണ്.

നിങ്ങളുടെ ആവശ്യങ്ങൾ കൂടുതലാണെങ്കിൽ - പ്രവർത്തനക്ഷമത, കരുത്ത്, പ്രകടനം, കാര്യക്ഷമത തുടങ്ങിയവയിലായാലും - നിങ്ങൾക്ക് കൂടുതൽ ഫീച്ചർ ചെയ്ത ഭാഷയിലേക്ക് മാറാം.

നിങ്ങൾക്ക് ഇതിനകം C/Perl/Python പ്രോഗ്രാമിംഗ് ഭാഷയോ മറ്റേതെങ്കിലും പ്രോഗ്രാമിംഗ് ഭാഷയോ അറിയാമെങ്കിൽ, സ്ക്രിപ്റ്റിംഗ് ഭാഷ പഠിക്കുന്നത് അത്ര ബുദ്ധിമുട്ടുള്ള കാര്യമല്ല.

ഈ ലേഖനത്തിനായി ഞങ്ങളുടെ മൂന്നാമത്തെയും അവസാനത്തെയും സ്ക്രിപ്റ്റ് എഴുതുക. ഈ സ്ക്രിപ്റ്റ് ഒരു ഇന്ററാക്ടീവ് സ്ക്രിപ്റ്റായി പ്രവർത്തിക്കുന്നു. എന്തുകൊണ്ടാണ് നിങ്ങൾ, ലളിതവും എന്നാൽ സംവേദനാത്മകവുമായ ഈ സ്uക്രിപ്റ്റ് എക്uസിക്യൂട്ട് ചെയ്uത് നിങ്ങൾക്ക് എങ്ങനെ തോന്നി എന്ന് ഞങ്ങളോട് പറയരുത്.

#! /bin/bash
echo "Hey what's Your First Name?";
read a;
echo "welcome Mr./Mrs. $a, would you like to tell us, Your Last Name";
read b;
echo "Thanks Mr./Mrs. $a $b for telling us your name";
echo "*******************"
echo "Mr./Mrs. $b, it's time to say you good bye"
Hey what's Your First Name?
Avishek
welcome Mr./Mrs. Avishek, would you like to tell us, Your Last Name
Kumar
Thanks Mr./Mrs. Avishek Kumar for telling us your name
******************************************************
Mr./Mrs. Kumar, it's time to say you good bye

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