ค้นหาเว็บไซต์

ทำความเข้าใจการจำแนกประเภทต่างๆ ของคำสั่งเชลล์และการใช้งานใน Linux


เมื่อเป็นเรื่องของการควบคุมระบบ Linux ของคุณอย่างสมบูรณ์ ไม่มีอะไรที่ใกล้เคียงกับ command line interface (CLI) ในการที่จะเป็นผู้ใช้ Linux เราต้องเข้าใจคำสั่งเชลล์ประเภทต่างๆ และวิธีการใช้งานที่เหมาะสมจากเทอร์มินัล

ใน Linux มีคำสั่งหลายประเภท และสำหรับผู้ใช้ Linux ใหม่ การรู้ความหมายของคำสั่งต่างๆ ช่วยให้สามารถใช้งานได้อย่างมีประสิทธิภาพและแม่นยำ ดังนั้นในบทความนี้ เราจะอธิบายการจำแนกประเภทต่างๆ ของคำสั่งเชลล์ใน Linux

แนะนำให้อ่าน: 5 เคล็ดลับและเทคนิคบรรทัดคำสั่งที่น่าสนใจใน Linux – ตอนที่ 1

สิ่งสำคัญประการหนึ่งที่ควรทราบคืออินเทอร์เฟซบรรทัดคำสั่งแตกต่างจากเชลล์ เพียงแต่ให้ช่องทางในการเข้าถึงเชลล์เท่านั้น เชลล์ซึ่งสามารถตั้งโปรแกรมได้ทำให้สามารถสื่อสารกับเคอร์เนลโดยใช้คำสั่งได้

การจำแนกประเภทต่างๆ ของคำสั่ง Linux อยู่ภายใต้การจำแนกประเภทต่อไปนี้:

1. โปรแกรมปฏิบัติการ (คำสั่งระบบไฟล์)

เมื่อคุณรันคำสั่ง Linux จะค้นหาไดเร็กทอรีที่เก็บไว้ในตัวแปรสภาพแวดล้อม ` PATH จากซ้ายไปขวาเพื่อเรียกใช้คำสั่งเฉพาะนั้น

คุณสามารถดูไดเร็กทอรีได้ใน ` PATH ดังนี้:

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:

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. นามแฝงของ Linux

คำสั่งเหล่านี้เป็นคำสั่งที่ผู้ใช้กำหนด ซึ่งสร้างขึ้นโดยใช้คำสั่งในตัวของเชลล์ นามแฝง และมีคำสั่งเชลล์อื่นๆ ที่มีตัวเลือกและอาร์กิวเมนต์บางอย่าง แนวคิดก็คือการใช้ชื่อใหม่และชื่อย่อสำหรับคำสั่งที่มีความยาว

แนะนำให้อ่าน: 10 การใช้ (!) สัญลักษณ์หรือตัวดำเนินการที่น่าทึ่งและลึกลับในคำสั่ง Linux

ไวยากรณ์สำหรับการสร้าง นามแฝง เป็นดังนี้:

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. คำสงวนของ Linux Shell

ในการเขียนโปรแกรมเชลล์ คำต่างๆ เช่น if, then, fi, for, ในขณะที่ , case, esac, else, จนกระทั่ง และอื่นๆ อีกมากมายเป็นคำสงวนของเชลล์ ตามคำอธิบายที่บอกเป็นนัย พวกมันมีความหมายเฉพาะกับเชลล์

คุณสามารถแสดงรายการคีย์เวิร์ดของเชลล์ Linux ทั้งหมดได้โดยใช้คำสั่ง type ดังที่แสดง:

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

การอ่านที่แนะนำ: 10 โอเปอเรเตอร์ Linux Chaining ที่มีประโยชน์พร้อมตัวอย่างที่ใช้งานได้จริง

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 ภายในสคริปต์

แนะนำให้อ่าน: 5 เชลล์สคริปต์สำหรับมือใหม่ Linux เพื่อเรียนรู้การเขียนโปรแกรมเชลล์

บันทึกไฟล์และหลังจากนั้นทำให้สคริปต์ปฏิบัติการได้ ในที่สุดก็รันได้ดังนี้:

chmod +x shell_functions.sh
./shell_functions.sh

5. คำสั่งในตัวของ Linux Shell

คำสั่งเหล่านี้เป็นคำสั่ง Linux ที่สร้างไว้ในเชลล์ ดังนั้นคุณจึงไม่พบคำสั่งเหล่านี้ภายในระบบไฟล์ ได้แก่ pwd, cd, bg, นามแฝง, ประวัติ, ประเภท, แหล่งที่มา, อ่าน, ออก และอื่นๆ อีกมากมาย

คุณสามารถแสดงรายการหรือตรวจสอบคำสั่งในตัวของ Linux ได้โดยใช้คำสั่ง type ดังที่แสดง:

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' ใน Linux
  2. ตัวอย่างคำสั่ง 15 'cd' ใน Linux
  3. เรียนรู้พลังของคำสั่ง 'ประวัติศาสตร์' ของ Linux

บทสรุป

ในฐานะผู้ใช้ Linux สิ่งสำคัญเสมอคือต้องทราบประเภทของคำสั่งที่คุณใช้งานอยู่ ฉันเชื่อว่าด้วยคำอธิบายที่แม่นยำและเข้าใจง่ายข้างต้นพร้อมภาพประกอบที่เกี่ยวข้องบางส่วน คุณคงเข้าใจคำสั่ง Linux ประเภทต่างๆ เป็นอย่างดี

คุณสามารถเข้าไปมีส่วนร่วมผ่านทางส่วนความคิดเห็นด้านล่างสำหรับคำถามหรือแนวคิดเพิ่มเติมที่คุณต้องการเสนอให้เรา