Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม Bash

15 ตัวอย่างคำสั่งยอดนิยม Linux ที่จำเป็นสำหรับผู้เริ่มต้นและผู้เชี่ยวชาญ

15 ตัวอย่างคำสั่งยอดนิยม Linux ที่จำเป็นสำหรับผู้เริ่มต้นและผู้เชี่ยวชาญ บทความนี้เป็นส่วนหนึ่งของ ชุดตัวอย่าง 15 รายการ ที่กำลังดำเนินอยู่ โดยจะมีการจัดเตรียมตัวอย่าง 15 ตัวอย่างสำหรับคำสั่งหรือฟังก์ชันการทำงานเฉพาะ ในชุดนี้ ก่อนหน้านี้เราได้พูดคุยกันเกี่ยวกับคำสั่ง find, ตัวอย่าง crontab, คำสั่ง grep, คำสั่ง history, คำสั่ง ping และตัวอย่าง wget

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

1. แสดงกระบวนการที่เรียงลำดับตามคอลัมน์ผลลัพธ์ด้านบน – กด O

ตามค่าเริ่มต้น คำสั่งด้านบนจะแสดงกระบวนการตามลำดับการใช้งาน CPU  เมื่อคำสั่งบนสุดกำลังทำงาน ให้กด M (ตัวพิมพ์ใหญ่) เพื่อแสดงกระบวนการที่เรียงลำดับตามการใช้หน่วยความจำดังที่แสดงด้านล่าง
15 ตัวอย่างคำสั่งยอดนิยม Linux ที่จำเป็นสำหรับผู้เริ่มต้นและผู้เชี่ยวชาญ

รูป :กด M เพื่อจัดเรียงตามการใช้หน่วยความจำ – คำสั่ง Unix top

หากต้องการจัดเรียงเอาต์พุตด้านบนตามคอลัมน์ใดๆ ให้กด O (ตัวพิมพ์ใหญ่ O) ซึ่งจะแสดงคอลัมน์ที่เป็นไปได้ทั้งหมดที่คุณสามารถจัดเรียงตามที่แสดงด้านล่าง

Current Sort Field: P for window 1:Def
Select sort field via field letter, type any other key to return 
 a: PID = Process Id v: nDRT = Dirty Pages count
 d: UID = User Id y: WCHAN = Sleeping in Function
 e: USER = User Name z: Flags = Task Flags
 ........

เมื่อคำสั่ง linux top ทำงาน กด R ซึ่งเรียงลำดับย้อนกลับ

2. ฆ่างานโดยไม่ต้องออกจากด้านบน – กด k

เมื่อคุณพบกระบวนการที่ต้องถูกฆ่าแล้ว ให้กด 'k' ซึ่งจะขอรหัสกระบวนการและส่งสัญญาณให้ส่ง  หากคุณมีสิทธิ์ฆ่า PID นั้น มันจะถูกฆ่าสำเร็จ

PID to kill: 1309
Kill PID 1309 with signal [15]: 
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
 1309 geek 23 0 2483m 1.7g 27m S 0 21.8 45:31.32 gagent
 1882 geek 25 0 2485m 1.7g 26m S 0 21.7 22:38.97 gagent
 5136 root 16 0 38040 14m 9836 S 0 0.2 0:00.39 nautilus

3. สร้างกระบวนการ Unix โดยไม่ต้องออกจากด้านบน – กด r

กด r, หากคุณต้องการเปลี่ยนลำดับความสำคัญของกระบวนการ (และไม่ฆ่ากระบวนการ) สิ่งนี้จะขอ PID เพื่อดำเนินการใหม่ ป้อน PID และลำดับความสำคัญ


PID to renice: 1309
Renice PID 1309 to value: 
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
 1309 geek 23 0 2483m 1.7g 27m S 0 21.8 45:31.32 gagent
 1882 geek 25 0 2485m 1.7g 26m S 0 21.7 22:38.97 gagent

4. แสดงผู้ใช้ที่เลือกในเอาต์พุตสูงสุดโดยใช้ top -u

ใช้ top -u เพื่อแสดงกระบวนการของผู้ใช้เฉพาะในเอาต์พุตคำสั่งด้านบนเท่านั้น

$ top -u geek

ขณะที่คำสั่ง unix top ทำงานอยู่ ให้กด u ซึ่งจะถามชื่อผู้ใช้ดังที่แสดงด้านล่าง

Which user (blank for all): geek
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
 1309 geek 23 0 2483m 1.7g 27m S 0 21.8 45:31.32 gagent
 1882 geek 25 0 2485m 1.7g 26m S 0 21.7 22:38.97 gagent

แสดงเฉพาะกระบวนการเฉพาะที่มี PID ที่กำหนดโดยใช้ top -p

ใช้ top -p ตามที่แสดงด้านล่างเพื่อแสดง PID เฉพาะ

$ top -p 1309, 1882
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
 1309 geek 23 0 2483m 1.7g 27m S 0 21.8 45:31.32 gagent
 1882 geek 25 0 2485m 1.7g 26m S 0 21.7 22:38.97 gagent

5. แสดง CPU / Core ทั้งหมดในเอาต์พุตสูงสุด – กด 1 (หนึ่ง)

เอาต์พุตระดับบนสุดตามค่าเริ่มต้นจะแสดงสาย CPU สำหรับ CPU ทั้งหมดรวมกันดังที่แสดงด้านล่าง

top - 20:10:39 up 40 days, 23:02, 1 user, load average: 4.97, 2.01, 1.25
Tasks: 310 total, 1 running, 309 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.5%us, 0.7%sy, 0.0%ni, 92.3%id, 6.4%wa, 0.0%hi, 0.0%si, 0.0%st

กด 1 (หนึ่ง) เมื่อคำสั่งบนสุดกำลังทำงานอยู่ ซึ่งจะแยก CPU ลงและแสดงรายละเอียดสำหรับ CPU แต่ละตัวที่ทำงานบนระบบดังที่แสดงด้านล่าง

top - 20:10:07 up 40 days, 23:03, 1 user, load average: 5.32, 2.38, 1.39
Tasks: 341 total, 3 running, 337 sleeping, 0 stopped, 1 zombie
Cpu0 : 7.7%us, 1.7%sy, 0.0%ni, 79.5%id, 11.1%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 0.3%us, 0.0%sy, 0.0%ni, 94.9%id, 4.7%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu2 : 3.3%us, 0.7%sy, 0.0%ni, 55.7%id, 40.3%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu3 : 5.0%us, 1.0%sy, 0.0%ni, 86.2%id, 7.4%wa, 0.0%hi, 0.3%si, 0.0%st
Cpu4 : 38.5%us, 5.4%sy, 0.3%ni, 0.0%id, 54.8%wa, 0.0%hi, 1.0%si, 0.0%st
Cpu5 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu6 : 0.3%us, 0.7%sy, 0.0%ni, 97.3%id, 1.7%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu7 : 5.4%us, 4.4%sy, 0.0%ni, 82.6%id, 7.7%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu8 : 1.7%us, 1.7%sy, 0.0%ni, 72.8%id, 23.8%wa, 0.0%hi, 0.0%si, 0.0%st

6. รีเฟรชเอาต์พุตคำสั่งบน Unix ตามความต้องการ (หรือ) เปลี่ยนช่วงการรีเฟรช

ตามค่าเริ่มต้น คำสั่ง linux top จะอัพเดตเอาต์พุตทุกๆ 3.0 วินาที เมื่อคุณต้องการอัพเดตเอาต์พุตตามความต้องการ ให้กด space bar

หากต้องการเปลี่ยนความถี่การอัปเดตเอาต์พุต ให้กด d ในโหมดโต้ตอบ และป้อนเวลาเป็นวินาทีตามที่แสดงด้านล่าง

Change delay from 3.0 to: 10
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
 1309 geek 23 0 2483m 1.7g 27m S 0 21.8 45:31.32 gagent
 1882 geek 25 0 2485m 1.7g 26m S 0 21.7 22:38.97 gagent

7. ไฮไลต์กระบวนการที่รันอยู่ในเอาต์พุตคำสั่ง Linux Top – กด z หรือ b

กด z หรือ b ซึ่งจะไฮไลต์กระบวนการที่ทำงานอยู่ทั้งหมดดังที่แสดงด้านล่าง
15 ตัวอย่างคำสั่งยอดนิยม Linux ที่จำเป็นสำหรับผู้เริ่มต้นและผู้เชี่ยวชาญ

รูป :Ubuntu Linux – คำสั่งด้านบนเน้นกระบวนการทำงาน

8. แสดงเส้นทางที่แน่นอนของคำสั่งและอาร์กิวเมนต์ – กด c

กด c ซึ่งจะแสดง / ซ่อนพาธสัมบูรณ์ของคำสั่ง และอาร์กิวเมนต์ตามที่แสดงด้านล่าง

 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
 1309 geek 23 0 2483m 1.7g 27m S 0 21.8 45:31.32 /usr/sbin/gagent
 1882 geek 25 0 2485m 1.7g 26m S 0 21.7 22:38.97 /usr/sbin/gagent -l 0 -u pre

9. ออกจากคำสั่งยอดนิยมหลังจากการวนซ้ำตามจำนวนที่ระบุโดยใช้ top -n

จนกว่าคุณจะกด q ด้านบนจะแสดงเอาต์พุตอย่างต่อเนื่อง หากคุณต้องการดูเฉพาะการวนซ้ำและต้องการให้ด้านบนออกโดยอัตโนมัติ ให้ใช้ตัวเลือก -n ดังที่แสดงด้านล่าง

ตัวอย่างต่อไปนี้จะแสดงการวนซ้ำ 2 ครั้งของเอาต์พุตคำสั่ง unix top และออกโดยอัตโนมัติ

$ top -n 2

10. การดำเนินการคำสั่ง Unix Top ในโหมดแบทช์

หากคุณต้องการดำเนินการคำสั่งด้านบนในโหมดแบตช์ ให้ใช้ตัวเลือก -b ดังที่แสดงด้านล่าง

$ top -b -n 1

หมายเหตุ: ตัวเลือกนี้มีประโยชน์มากเมื่อคุณต้องการบันทึกเอาต์พุตคำสั่ง unix top ไปยังไฟล์ข้อความที่อ่านได้ดังที่เราได้กล่าวไว้ก่อนหน้านี้

11. แยกเอาต์พุตด้านบนออกเป็นหลายพาเนล – กด A

หากต้องการแสดงเอาต์พุตคำสั่งด้านบนหลายมุมมองบนเทอร์มินัล ให้กด A คุณสามารถวนดูหน้าต่างเหล่านี้ได้โดยใช้ 'a' สิ่งนี้มีประโยชน์มาก เมื่อคุณสามารถจัดเรียงเอาต์พุตบนหลายหน้าต่างโดยใช้คอลัมน์เอาต์พุตด้านบนที่แตกต่างกันได้

12. รับความช่วยเหลือด้านการสั่งการระดับสูงจาก Command Line และการโต้ตอบ

รับความช่วยเหลือเกี่ยวกับตัวเลือกบรรทัดคำสั่งด่วนโดยใช้ top -h ดังที่แสดงด้านล่าง

$ top -h
 top: procps version 3.2.0
usage: top -hv | -bcisS -d delay -n iterations [-u user | -U user] -p pid [,pid ...]

กด h ขณะที่คำสั่งด้านบนกำลังทำงาน ซึ่งจะแสดงความช่วยเหลือสำหรับคำสั่งด้านบนแบบโต้ตอบ

Help for Interactive Commands - procps version 3.2.0
Window 1:Def: Cumulative mode Off. System: Delay 3.0 secs; Secure mode Off.
 Z,B Global: 'Z' change color mappings; 'B' disable/enable bold
 l,t,m Toggle Summaries: 'l' load avg; 't' task/cpu stats; 'm' mem info
 1,I Toggle SMP view: '1' single/separate states; 'I' Irix/Solaris mode
 ..........

13. ลดจำนวนกระบวนการที่แสดงในเอาต์พุตด้านบน – กด n

กด n ในโหมดโต้ตอบ ซึ่งจะแจ้งตัวเลขและแสดงเฉพาะตัวเลขนั้น ตัวอย่างต่อไปนี้จะแสดงเพียง 2 กระบวนการในแต่ละครั้ง

Maximum tasks = 0, change to (0 is unlimited): 2
 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
 1309 geek 23 0 2483m 1.7g 27m S 0 21.8 45:31.32 gagent
 1882 geek 25 0 2485m 1.7g 26m S 0 21.7 22:38.97 gagent

14. สลับส่วนหัวด้านบนเพื่อเพิ่มจำนวนกระบวนการที่แสดง

ตามค่าเริ่มต้นด้านบนจะแสดงกระบวนการจำนวนทั้งหมดตามความสูงของหน้าต่าง หากคุณต้องการดูกระบวนการเพิ่มเติม คุณอาจต้องการลบข้อมูลส่วนหัวด้านบนบางส่วนออก

ต่อไปนี้เป็นข้อมูลส่วนหัวเริ่มต้นที่จัดทำโดยด้านบน

top - 23:47:32 up 179 days, 3:36, 1 user, load average: 0.01, 0.03, 0.00
Tasks: 67 total, 1 running, 66 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.7% user, 1.2% system, 0.0% nice, 98.0% idle
Mem: 1017136k total, 954652k used, 62484k free, 138280k buffers
Swap: 3068404k total, 22352k used, 3046052k free, 586576k cached
  • กด l – เพื่อซ่อน / แสดงค่าเฉลี่ยการโหลด บรรทัดส่วนหัวที่ 1
  • กด t – เพื่อซ่อน / แสดงสถานะของ CPU บรรทัดส่วนหัวที่ 2 และ 3
  • กด m – เพื่อซ่อน / แสดงข้อมูลหน่วยความจำ บรรทัดที่ 4 และ 5

15. บันทึกการตั้งค่าการกำหนดค่าสูงสุด – กด W

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

หากต้องการบันทึกการกำหนดค่าสูงสุด ให้กด W ซึ่งจะเขียนไฟล์การกำหนดค่าไปที่ ~/.toprc นี่จะแสดงข้อความยืนยันการเขียนดังที่แสดงด้านล่าง

top - 23:47:32 up 179 days, 3:36, 1 user, load average: 0.01, 0.03, 0.00
Tasks: 67 total, 1 running, 66 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.7% user, 1.2% system, 0.0% nice, 98.0% idle
Mem: 1017136k total, 954652k used, 62484k free, 138280k buffers
Swap: 3068404k total, 22352k used, 3046052k free, 586576k cached
Wrote configuration to '/home/ramesh/.toprc'