How to use the pstree command: Linux tip
สารบัญ:
เมื่อทำงานกับเครื่อง Linux บางครั้งคุณอาจต้องค้นหาว่ากระบวนการใดกำลังทำงานอยู่ มีจำนวนคำสั่งที่คุณสามารถใช้เพื่อค้นหาข้อมูลเกี่ยวกับกระบวนการที่กำลังทำงานอยู่โดยที่
ps
และ
top
เป็นคำที่ใช้บ่อยที่สุด
เราจะพูดถึง
pstree
สั่ง
pstree
มันคล้ายกับ
ps
แต่แทนที่จะแสดงกระบวนการที่กำลังรันอยู่มันแสดงให้พวกมันเห็นในแผนผัง รูปแบบคล้ายต้นไม้เป็นวิธีที่สะดวกกว่าในการแสดงลำดับชั้นกระบวนการและทำให้ผลลัพธ์น่าสนใจยิ่งขึ้น
วิธีใช้
pstree
สั่ง
pstree
ไวยากรณ์ทั่วไปสำหรับ
pstree
สั่ง
pstree
มีดังนี้:
ps
ในรูปแบบที่ง่ายที่สุดเมื่อเรียกใช้โดยไม่มีตัวเลือกหรืออาร์กิวเมนต์ใด ๆ
pstree
แสดงโครงสร้างต้นไม้แบบลำดับชั้นของกระบวนการที่กำลังทำงานทั้งหมด:
pstree
systemd─┬─VBoxService───7* ├─accounts-daemon───2* ├─2* ├─atd ├─cron ├─dbus-daemon ├─irqbalance───{irqbalance} ├─2* ├─lvmetad ├─lxcfs───2* ├─networkd-dispat───{networkd-dispat} ├─nginx───2*…
รายการด้านบน / รูทในทรีเป็นกระบวนการหลักของกระบวนการระบบทั้งหมด ในตัวอย่างนี้คือ
systemd
ซึ่งเป็นกระบวนการแรกที่เริ่มต้นในการบูต
pstree
ผสานสาขาที่เหมือนกันโดยวางไว้ระหว่างวงเล็บเหลี่ยมและนำหน้าด้วยจำนวนเต็มที่แสดงถึงจำนวนสาขา สิ่งนี้ทำให้เอาต์พุตอ่านง่ายขึ้นและดึงดูดสายตามากขึ้น
ด้านล่างเป็นตัวอย่างที่แสดงวิธีการใช้วงเล็บเหลี่ยม:
├─2*
เหมือนกับ:
├─agetty ├─agetty
หากต้องการปิดใช้งานการรวมสาขาที่เหมือนกันให้ใช้ตัวเลือก
-c
:
pstree -c
เธรดของกระบวนการแสดงภายใต้กระบวนการพาเรนต์และแสดงโดยใช้ชื่อกระบวนการภายในเครื่องหมายปีกกา นี่คือตัวอย่าง:
├─lxcfs───2*
ใช้อ็อพชัน
-t
เพื่อแสดงชื่อเธรดแบบเต็ม หากคุณต้องการซ่อนเธรดและแสดงเฉพาะโปรเซสให้ใช้ตัวเลือก
-T
โดยทั่วไปแล้ว
pstree
จะแสดงเอาต์พุตหลายบรรทัดที่ไม่พอดีกับหน้าจอ หากต้องการดูผลลัพธ์ทีละหนึ่งหน้าให้วาง
less
คำสั่ง
less
:
pstree | less
หากชื่อผู้ใช้ถูกกำหนดเป็นอาร์กิวเมนต์
pstree
จะแสดงเฉพาะกระบวนการที่เป็นของผู้ใช้นั้น ตัวอย่างเช่นคำสั่งต่อไปนี้จะแสดงเฉพาะกระบวนการที่เริ่มต้นโดยผู้ใช้ชื่อ“ linuxize”:
pstree linuxize
เมื่อ PID ถูกระบุเป็นอาร์กิวเมนต์
pstree
จะแสดงทรีที่มีกระบวนการที่กำหนดเป็นรูทของทรี นี่คือตัวอย่าง:
pstree 1943
sshd───bash───pstree
ในการแสดงกระบวนการหลักของกระบวนการที่กำหนดให้ใช้ตัวเลือก
-s
ตามด้วย PID กระบวนการ:
pstree -s 1943
systemd───sshd───sshd───bash───pstree
แสดง PID และ PGID
โดยปกติเมื่อรัน
pstree
สั่ง
pstree
ข้อมูลที่สำคัญที่สุดที่ผู้ใช้ต้องการคือ ID กระบวนการ ตัวอย่างเช่นการรู้จัก PID ช่วยให้คุณสามารถฆ่ากระบวนการทำงานผิดพลาด
อ็อพชัน
-p
pstree
ให้
pstree
แสดง PID:
pstree -p
PID แสดงในวงเล็บหลังแต่ละโพรเซสหรือเธรด
systemd(1)─┬─VBoxService(955)─┬─{VBoxService}(956) │ ├─{VBoxService}(957) │ ├─{VBoxService}(958) │ ├─{VBoxService}(959) │ ├─{VBoxService}(960) │ ├─{VBoxService}(961) │ └─{VBoxService}(962)…
โดยค่าเริ่มต้น
pstree
เรียงลำดับกระบวนการที่มีผู้ปกครองเดียวกันตามชื่อ ตัวเลือก
-n
บอก
pstree
ให้ใช้การเรียงลำดับตัวเลขเช่นเรียงลำดับตาม PID:
pstree -pn
ID กลุ่มกระบวนการหรือ PGIDs เป็น ID กระบวนการของสมาชิกรายแรกของกลุ่มกระบวนการ ในการดู PGID ให้ใช้ตัวเลือก
-g
:
pstree -g
PID ยังแสดงในวงเล็บหลังแต่ละกระบวนการหรือเธรด
systemd(1)─┬─VBoxService(954)─┬─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ └─{VBoxService}(954)…
เมื่อมีการแสดง PID หรือ PGID การรวมจะถูกปิดใช้งานโดยปริยาย
แสดงอาร์กิวเมนต์บรรทัดคำสั่ง
บางโปรแกรมสามารถเรียกใช้โดยมีตัวเลือกการกำหนดค่าที่ระบุไว้เป็นอาร์กิวเมนต์บรรทัดคำสั่ง
โดยค่าเริ่มต้น
pstree
จะไม่แสดงอาร์กิวเมนต์บรรทัดคำสั่งสำหรับกระบวนการทำงาน ในการดูว่ากระบวนการเริ่มต้นอย่างไรให้ใช้คำสั่งพร้อมกับตัวเลือก
-a
:
pstree -a
… ├─agetty -o -p -- \\u --keep-baud 115200, 38400, 9600 ttyS0 vt220 ├─agetty -o -p -- \\u --noclear tty1 linux…
ไฮไลต์
pstree
ยังช่วยให้คุณสามารถเน้นกระบวนการเพื่อให้เห็นภาพได้ดีขึ้น
ตัวเลือก
-h
pstree
ให้
pstree
เพื่อเน้นกระบวนการปัจจุบันและบรรพบุรุษทั้งหมด
pstree -h
หากต้องการเน้นกระบวนการเฉพาะให้ใช้ตัวเลือก
-H
ตามด้วย ID กระบวนการ:
pstree -H PID_NUMBER
หากไม่สนับสนุนการไฮไลต์คำสั่งจะออกโดยมีข้อผิดพลาด
ข้อสรุป
pstree
สั่ง
pstree
แสดงกระบวนการที่กำลังทำงานอยู่ในรูปแบบของโครงสร้างแบบต้นไม้
สำหรับข้อมูลเกี่ยวกับตัวเลือก
pstree
ทั้งหมดที่มีให้พิมพ์
man pstree
ในเทอร์มินัลของคุณ
คำสั่ง linux พื้นฐาน

การรู้วิธีใช้บรรทัดคำสั่งจะมีประโยชน์มาก ในบทความนี้เราจะดำเนินการตามคำสั่ง Linux ที่ใช้บ่อยที่สุดที่ผู้ดูแลระบบ Linux ใช้เป็นประจำทุกวัน
คำสั่ง Chmod ใน linux (การอนุญาตไฟล์)

ใน Linux การเข้าถึงไฟล์นั้นได้รับการจัดการผ่านการอนุญาตไฟล์คุณสมบัติและความเป็นเจ้าของ บทช่วยสอนนี้ครอบคลุมถึงวิธีการใช้คำสั่ง chmod เพื่อเปลี่ยนสิทธิ์การเข้าถึงของไฟล์และไดเรกทอรี
คำสั่ง Chgrp ใน linux (เปลี่ยนกลุ่ม)

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