ഷെൽ കമാൻഡുകളുടെ വ്യത്യസ്ത വർഗ്ഗീകരണങ്ങളും ലിനക്സിലെ അവയുടെ ഉപയോഗവും മനസ്സിലാക്കുക


നിങ്ങളുടെ ലിനക്സ് സിസ്റ്റത്തിൽ സമ്പൂർണ്ണ നിയന്ത്രണം നേടുമ്പോൾ, കമാൻഡ് ലൈൻ ഇന്റർഫേസിന് (CLI) അടുത്തൊന്നും വരുന്നില്ല. ഒരു ലിനക്സ് പവർ ഉപയോക്താവാകുന്നതിന്, ടെർമിനലിൽ നിന്ന് വ്യത്യസ്ത തരത്തിലുള്ള ഷെൽ കമാൻഡുകളും അവ ഉപയോഗിക്കുന്നതിനുള്ള ഉചിതമായ വഴികളും ഒരാൾ മനസ്സിലാക്കണം.

Linux-ൽ, പല തരത്തിലുള്ള കമാൻഡുകൾ ഉണ്ട്, ഒരു പുതിയ Linux ഉപയോക്താവിന്, വ്യത്യസ്ത കമാൻഡുകളുടെ അർത്ഥം അറിയുന്നത് കാര്യക്ഷമവും കൃത്യവുമായ ഉപയോഗം സാധ്യമാക്കുന്നു. അതിനാൽ, ഈ ലേഖനത്തിൽ, ലിനക്സിലെ ഷെൽ കമാൻഡുകളുടെ വിവിധ വർഗ്ഗീകരണങ്ങളിലൂടെ നമുക്ക് സഞ്ചരിക്കാം.

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

Linux കമാൻഡുകളുടെ വ്യത്യസ്ത വർഗ്ഗീകരണങ്ങൾ ഇനിപ്പറയുന്ന വർഗ്ഗീകരണത്തിന് കീഴിലാണ്:

1. പ്രോഗ്രാം എക്സിക്യൂട്ടബിളുകൾ (ഫയൽ സിസ്റ്റം കമാൻഡുകൾ)

നിങ്ങൾ ഒരു കമാൻഡ് പ്രവർത്തിപ്പിക്കുമ്പോൾ, ആ നിർദ്ദിഷ്ട കമാൻഡിന്റെ എക്സിക്യൂട്ടബിളിനായി ലിനക്സ് ഇടത്തുനിന്ന് വലത്തോട്ട് PATH പരിസ്ഥിതി വേരിയബിളിൽ സംഭരിച്ചിരിക്കുന്ന ഡയറക്ടറികളിലൂടെ തിരയുന്നു.

നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന രീതിയിൽ PATH-ൽ ഡയറക്uടറികൾ കാണാൻ കഴിയും:

$ echo $PATH

/home/aaronkilik/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

മുകളിൽ പറഞ്ഞിരിക്കുന്ന ക്രമത്തിൽ, /home/aaronkilik/bin എന്ന ഡയറക്ടറി ആദ്യം തിരയും, തുടർന്ന് /usr/local/sbin അങ്ങനെ, തിരയലിൽ ഓർഡർ പ്രധാനമാണ്. പ്രക്രിയ.

/usr/bin ഡയറക്uടറിയിലെ ഫയൽ സിസ്റ്റം കമാൻഡുകളുടെ ഉദാഹരണങ്ങൾ:

$ ll /bin/
total 16284
drwxr-xr-x  2 root root    4096 Jul 31 16:30 ./
drwxr-xr-x 23 root root    4096 Jul 31 16:29 ../
-rwxr-xr-x  1 root root    6456 Apr 14 18:53 archdetect*
-rwxr-xr-x  1 root root 1037440 May 17 16:15 bash*
-rwxr-xr-x  1 root root  520992 Jan 20  2016 btrfs*
-rwxr-xr-x  1 root root  249464 Jan 20  2016 btrfs-calc-size*
lrwxrwxrwx  1 root root       5 Jul 31 16:19 btrfsck -> btrfs*
-rwxr-xr-x  1 root root  278376 Jan 20  2016 btrfs-convert*
-rwxr-xr-x  1 root root  249464 Jan 20  2016 btrfs-debug-tree*
-rwxr-xr-x  1 root root  245368 Jan 20  2016 btrfs-find-root*
-rwxr-xr-x  1 root root  270136 Jan 20  2016 btrfs-image*
-rwxr-xr-x  1 root root  249464 Jan 20  2016 btrfs-map-logical*
-rwxr-xr-x  1 root root  245368 Jan 20  2016 btrfs-select-super*
-rwxr-xr-x  1 root root  253816 Jan 20  2016 btrfs-show-super*
-rwxr-xr-x  1 root root  249464 Jan 20  2016 btrfstune*
-rwxr-xr-x  1 root root  245368 Jan 20  2016 btrfs-zero-log*
-rwxr-xr-x  1 root root   31288 May 20  2015 bunzip2*
-rwxr-xr-x  1 root root 1964536 Aug 19  2015 busybox*
-rwxr-xr-x  1 root root   31288 May 20  2015 bzcat*
lrwxrwxrwx  1 root root       6 Jul 31 16:19 bzcmp -> bzdiff*
-rwxr-xr-x  1 root root    2140 May 20  2015 bzdiff*
lrwxrwxrwx  1 root root       6 Jul 31 16:19 bzegrep -> bzgrep*
-rwxr-xr-x  1 root root    4877 May 20  2015 bzexe*
lrwxrwxrwx  1 root root       6 Jul 31 16:19 bzfgrep -> bzgrep*
-rwxr-xr-x  1 root root    3642 May 20  2015 bzgrep*

2. ലിനക്സ് അപരനാമങ്ങൾ

ഇവ ഉപയോക്തൃ നിർവചിച്ച കമാൻഡുകൾ ആണ്, അവ ഷെൽ ബിൽറ്റ്-ഇൻ കമാൻഡ് എന്ന അപരനാമം ഉപയോഗിച്ചാണ് നിർമ്മിച്ചിരിക്കുന്നത്, കൂടാതെ ചില ഓപ്ഷനുകളും ആർഗ്യുമെന്റുകളും ഉള്ള മറ്റ് ഷെൽ കമാൻഡുകൾ അടങ്ങിയിരിക്കുന്നു. ദൈർഘ്യമേറിയ കമാൻഡുകൾക്കായി അടിസ്ഥാനപരമായി പുതിയതും ഹ്രസ്വവുമായ പേരുകൾ ഉപയോഗിക്കുക എന്നതാണ് ആശയങ്ങൾ.

ഒരു അപരനാമം സൃഷ്ടിക്കുന്നതിനുള്ള വാക്യഘടന ഇപ്രകാരമാണ്:

$ alias newcommand='command -options'

നിങ്ങളുടെ സിസ്റ്റത്തിലെ എല്ലാ അപരനാമങ്ങളും ലിസ്റ്റുചെയ്യുന്നതിന്, താഴെയുള്ള കമാൻഡ് നൽകുക:

$ alias -p

alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'

Linux-ൽ ഒരു പുതിയ അപരനാമം സൃഷ്ടിക്കുന്നതിന്, ചുവടെയുള്ള ചില ഉദാഹരണങ്ങളിലൂടെ പോകുക.

$ alias update='sudo apt update'
$ alias upgrade='sudo apt dist-upgrade'
$ alias -p | grep 'up'

എന്നിരുന്നാലും, മുകളിൽ ഞങ്ങൾ സൃഷ്ടിച്ച അപരനാമങ്ങൾ താൽക്കാലികമായി മാത്രമേ പ്രവർത്തിക്കൂ, സിസ്റ്റം പുനരാരംഭിക്കുമ്പോൾ, അടുത്ത ബൂട്ടിന് ശേഷം അവ പ്രവർത്തിക്കില്ല. താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ നിങ്ങളുടെ .bashrc ഫയലിൽ നിങ്ങൾക്ക് സ്ഥിരമായ അപരനാമങ്ങൾ സജ്ജീകരിക്കാം.

അവ ചേർത്ത ശേഷം, സജീവമാക്കുന്നതിന് ചുവടെയുള്ള കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

$ source ~/.bashrc

3. ലിനക്സ് ഷെൽ റിസർവ് ചെയ്ത വാക്കുകൾ

ഷെൽ പ്രോഗ്രാമിംഗിൽ, if, then, fi, for, while, case, esac, else, till തുടങ്ങിയ പദങ്ങൾ ഷെൽ റിസർവ്ഡ് പദങ്ങളാണ്. വിവരണം സൂചിപ്പിക്കുന്നത് പോലെ, അവയ്ക്ക് ഷെല്ലിന് പ്രത്യേക അർത്ഥമുണ്ട്.

കാണിച്ചിരിക്കുന്നതുപോലെ type കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് എല്ലാ Linux ഷെൽ കീവേഡുകളും ലിസ്റ്റ് ചെയ്യാം:

$ type if then fi for while case esac else until
if is a shell keyword
then is a shell keyword
fi is a shell keyword
for is a shell keyword
while is a shell keyword
case is a shell keyword
esac is a shell keyword
else is a shell keyword
until is a shell keyword

4. ലിനക്സ് ഷെൽ പ്രവർത്തനങ്ങൾ

നിലവിലെ ഷെല്ലിനുള്ളിൽ കൂട്ടായി എക്സിക്യൂട്ട് ചെയ്യുന്ന ഒരു കൂട്ടം കമാൻഡുകളാണ് ഷെൽ ഫംഗ്ഷൻ. ഒരു ഷെൽ സ്ക്രിപ്റ്റിൽ ഒരു നിർദ്ദിഷ്ട ടാസ്ക്ക് നടപ്പിലാക്കാൻ ഫംഗ്ഷനുകൾ സഹായിക്കുന്നു. ഒരു സ്ക്രിപ്റ്റിൽ ഷെൽ ഫംഗ്ഷനുകൾ എഴുതുന്നതിന്റെ പരമ്പരാഗത രൂപം ഇതാണ്:

function_name() {
command1
command2
…….
}

പകരമായി,

function function_name {
command1
command2
…….
}

shell_functions.sh എന്ന സ്ക്രിപ്റ്റിൽ ഷെൽ ഫംഗ്ഷനുകൾ എങ്ങനെ എഴുതാമെന്ന് നോക്കാം.

#!/bin/bash 

#write a shell function to update and upgrade installed packages 
upgrade_system(){
        sudo apt update;
        sudo apt dist-upgrade;
}

#execute function
upgrade_system

കമാൻഡ് ലൈനിൽ നിന്ന് sudo apt update, sudo apt dist-upgrade എന്നീ രണ്ട് കമാൻഡുകൾ എക്സിക്യൂട്ട് ചെയ്യുന്നതിനുപകരം, രണ്ട് കമാൻഡുകളും ഒറ്റത്തവണയായി എക്സിക്യൂട്ട് ചെയ്യുന്നതിനായി ഞങ്ങൾ ഒരു ലളിതമായ ഷെൽ ഫംഗ്ഷൻ എഴുതിയിട്ടുണ്ട്. കമാൻഡ്, ഒരു സ്ക്രിപ്റ്റിനുള്ളിൽ upgrade_system.

ഫയൽ സേവ് ചെയ്ത ശേഷം, സ്ക്രിപ്റ്റ് എക്സിക്യൂട്ടബിൾ ആക്കുക. അവസാനമായി താഴെ പറയുന്ന രീതിയിൽ പ്രവർത്തിപ്പിക്കുക:

$ chmod +x shell_functions.sh
$ ./shell_functions.sh

5. ലിനക്സ് ഷെൽ ബിൽറ്റ്-ഇൻ കമാൻഡുകൾ

ഷെല്ലിൽ നിർമ്മിച്ചിരിക്കുന്ന ലിനക്സ് കമാൻഡുകൾ ഇവയാണ്, അതിനാൽ നിങ്ങൾക്ക് അവ ഫയൽ സിസ്റ്റത്തിൽ കണ്ടെത്താൻ കഴിയില്ല. അവയിൽ pwd, cd, bg, അപരനാമം, ചരിത്രം, തരം, ഉറവിടം, വായന, പുറത്തുകടക്കൽ എന്നിവയും മറ്റു പലതും ഉൾപ്പെടുന്നു.

കാണിച്ചിരിക്കുന്നതുപോലെ type കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് Linux ബിൽറ്റ്-ഇൻ കമാൻഡുകൾ ലിസ്റ്റുചെയ്യാനോ പരിശോധിക്കാനോ കഴിയും:

$ type pwd
pwd is a shell builtin
$ type cd
cd is a shell builtin
$ type bg
bg is a shell builtin
$ type alias
alias is a shell builtin
$ type history
history is a shell builtin

ചില Linux ബിൽറ്റ്-ഇൻ കമാൻഡ് ഉപയോഗത്തെക്കുറിച്ച് അറിയുക:

  1. ലിനക്സിലെ 15 ‘pwd’ കമാൻഡ് ഉദാഹരണങ്ങൾ
  2. ലിനക്സിലെ 15 ‘സിഡി’ കമാൻഡ് ഉദാഹരണങ്ങൾ
  3. Linux ‘history’ കമാൻഡിന്റെ ശക്തി അറിയുക

ഉപസംഹാരം

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

നിങ്ങൾ ഞങ്ങൾക്ക് വാഗ്ദാനം ചെയ്യാൻ ആഗ്രഹിക്കുന്ന ഏതെങ്കിലും ചോദ്യങ്ങൾക്കോ അനുബന്ധ ആശയങ്ങൾക്കോ താഴെയുള്ള അഭിപ്രായ വിഭാഗത്തിലൂടെ നിങ്ങൾക്ക് കഠിനമായിരിക്കാൻ കഴിയും.