วิธีแสดงข้อมูลกระบวนการบนระบบ Linux ด้วยคำสั่ง ps

วิธีแสดงข้อมูลกระบวนการบนระบบ Linux ด้วยคำสั่ง ps

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





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





คำสั่ง ps คืออะไร?

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





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

อุปกรณ์ usb ที่ไม่รู้จัก (คำขอตัวอธิบายอุปกรณ์ล้มเหลว) windows 10

ที่เกี่ยวข้อง: กระบวนการใน Linux คืออะไร?



วิธีใช้คำสั่ง ps ใน Linux

ไวยากรณ์พื้นฐานของคำสั่ง ps คือ:

ps [options]

การรันคำสั่ง ps โดยไม่มีอาร์กิวเมนต์ใดๆ จะสร้างเอาต์พุตต่อไปนี้:





ps

ข้อมูลต่อไปนี้มีอยู่ในเอาต์พุตดังกล่าว

  • PID : ID โปรเซสของโปรเซสที่ไฮไลท์
  • TTY : แสดงชื่อเทอร์มินัลที่คุณใช้
  • เวลา : เวลาที่กำหนดให้กับกระบวนการโดย CPU
  • CMD : คำสั่งที่รับผิดชอบในการเริ่มกระบวนการ

แสดงรายการกระบวนการทั้งหมด

หากต้องการรับรายการกระบวนการทั้งหมดบนระบบ Linux ให้ใช้ปุ่ม -ถึง หรือ -และ ตั้งค่าสถานะด้วยคำสั่ง ps เริ่มต้น





ps -A
ps -e

ดูกระบวนการที่เกี่ยวข้องกับเทอร์มินัล

NS -NS แฟล็กจะแสดงรายการกระบวนการทั้งหมดที่เกี่ยวข้องกับเทอร์มินัล

ps -T

คุณจะเห็นผลลัพธ์ที่มีลักษณะดังนี้

กระบวนการแสดงผลที่ไม่เกี่ยวข้องกับเทอร์มินัล

NS -ถึง แฟล็กจะแสดงรายการกระบวนการที่ไม่เกี่ยวข้องกับเทอร์มินัลปัจจุบัน

ps -a

หน้าจอจะแสดงผลลัพธ์

ลบล้างตัวเลือกที่ระบุ

คุณยังสามารถใช้ -NS หรือ --ยกเลิกการเลือก ตั้งค่าสถานะด้วยคำสั่ง ps เพื่อกลับการทำงานของอาร์กิวเมนต์เฉพาะ

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

ps -T -N
ps -T --deselect

แสดงคอลัมน์ที่กำหนดเองในผลลัพธ์

คำสั่ง ps เริ่มต้นแสดงคอลัมน์ต่อไปนี้: PID, TTY, TIME และ CMD อย่างไรก็ตาม คุณสามารถปรับแต่งคอลัมน์เหล่านี้และแสดงรายละเอียดอื่นๆ แทนได้

NS -มันเป็น แฟล็กช่วยให้คุณระบุคอลัมน์ที่คุณต้องการรับในเอาต์พุต

ps -eo pid, uname, pcpu, stime, pri, f

เปลี่ยนชื่อคอลัมน์ในผลลัพธ์

คุณยังสามารถเปลี่ยนชื่อป้ายชื่อคอลัมน์ในผลลัพธ์ได้อีกด้วย NS -หรือ ธงจะช่วยให้คุณทำเช่นนี้ได้

ps -e -o pid=Process_ID, uid=User_ID, com=COMMAND

ลงรายการกระบวนการที่กำลังทำงานอยู่

ในการรับรายการกระบวนการที่กำลังทำงานอยู่บนระบบของคุณ ให้ส่ง -ขวาน ตั้งค่าสถานะด้วยคำสั่ง ps NS -ถึง หมายถึง ทั้งหมด .

ps -ax

แสดงกระบวนการในรูปแบบ BSD

รูปแบบ Linux ของการส่งอาร์กิวเมนต์ด้วยคำสั่งใช้ the - (ยัติภังค์) อักขระ ในทางกลับกัน รูปแบบ BSD ไม่มีอักขระพิเศษใดๆ ที่มีแฟล็กอาร์กิวเมนต์

ตัวอย่างเช่น, ps -A (รูปแบบ Linux) จะแสดงรายการกระบวนการทั้งหมด BSD เทียบเท่าของคำสั่งนี้คือ:

ps au

ที่ไหน ถึง หมายถึง ทั้งหมด และ ยู หมายถึงผู้ใช้

รายการรูปแบบเต็มรูปแบบของกระบวนการ

หากต้องการรับข้อมูลโดยละเอียดเกี่ยวกับกระบวนการ ให้ส่ง -ef หรือ -eF ตัวเลือกด้วยคำสั่ง

ps -ef
ps -eF

เอาต์พุตที่กล่าวถึงข้างต้นประกอบด้วยข้อมูลต่อไปนี้เกี่ยวกับกระบวนการ

  • UID : ID ผู้ใช้ของผู้ใช้ที่รับผิดชอบกระบวนการ
  • PID : ID กระบวนการของรายการ
  • PPID : ID กระบวนการของกระบวนการหลัก
  • : ข้อมูลการใช้งาน CPU และกำหนดการที่เกี่ยวข้องกับกระบวนการ
  • ประมาณการ : เวลาที่เริ่มกระบวนการ
  • TTY : ชื่อของเทอร์มินัลที่คุณกำลังใช้
  • เวลา : จำนวนเวลา CPU ที่ใช้โดยกระบวนการ
  • CMD : คำสั่งที่ดำเนินการกระบวนการ

NS -ยู ตัวเลือกแสดงรายการของกระบวนการทั้งหมดที่เริ่มต้นโดยผู้ใช้เฉพาะ

ps -u username

หากต้องการแสดงกระบวนการทั้งหมดที่รันโดยผู้ใช้รูท ให้ส่งผ่านรูทด้วยปุ่ม -ยู และ -ยู ธง.

ps -U root -u root

รับกระบวนการ PID

ในการรับรหัสกระบวนการของกระบวนการเฉพาะ ให้ใช้ -ค ตั้งค่าสถานะด้วยคำสั่ง

ps -C process-name

แทนที่ ชื่อกระบวนการ ด้วยชื่อของกระบวนการ ผลลัพธ์จะแสดง ID ของกระบวนการ

ps -C bash

ลงรายการหัวข้อของกระบวนการเฉพาะ

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

ps -L pid

ตัวอย่างเช่น

ps -L 1250

แสดงกระบวนการที่เกี่ยวข้องกับกลุ่มใดกลุ่มหนึ่ง

การรับรายการกระบวนการที่เกี่ยวข้องกับกลุ่มใดกลุ่มหนึ่งก็ง่ายเช่นกัน ใช้ -fG ตั้งค่าสถานะด้วยคำสั่งเริ่มต้น

ps -fG groupname

คุณยังสามารถส่ง ID กลุ่มแทนชื่อ g-roup ได้อีกด้วย

ps -fG groupid

ตัวอย่างเช่น

ps -fG sudoers
ps -fg 1000

แสดงกระบวนการในรูปแบบต้นไม้

ในการรับการแสดงแผนผังลำดับชั้นของกระบวนการที่ทำงานอยู่ใน Linux:

ps -f --forest -C bash

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

การตรวจสอบกระบวนการที่ทำงานอยู่ใน Linux

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

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

แบ่งปัน แบ่งปัน ทวีต อีเมล 15 Windows Command Prompt (CMD) คำสั่งที่คุณต้องรู้

พรอมต์คำสั่งยังคงเป็นเครื่องมือ Windows ที่มีประสิทธิภาพ ต่อไปนี้คือคำสั่ง CMD ที่มีประโยชน์ที่สุดที่ผู้ใช้ Windows ทุกคนจำเป็นต้องรู้

อ่านต่อไป
หัวข้อที่เกี่ยวข้อง
  • ลินุกซ์
  • ลินุกซ์
เกี่ยวกับผู้เขียน Deepesh Sharma(79 บทความที่ตีพิมพ์)

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

เพิ่มเติมจาก Deepesh Sharma

สมัครรับจดหมายข่าวของเรา

เข้าร่วมจดหมายข่าวของเราสำหรับเคล็ดลับทางเทคนิค บทวิจารณ์ eBook ฟรี และดีลพิเศษ!

คลิกที่นี่เพื่อสมัครสมาชิก