“ <>” หมายถึงอะไรใน“ kill -9 <>”?


15

ฉันจะผ่านการสอนเกี่ยวกับการกู้คืนจากความล้มเหลวของฐานข้อมูลและในการกวดวิชาความล้มเหลวในโฮสต์ของฐานข้อมูลหลักจะถูกจำลองด้วย:

kill -9 <>

ฉันรู้ว่าkillคำสั่งนั้นใช้ในการส่งสัญญาณไปยังกระบวนการและนั่น9หมายถึงSIGKILLสัญญาณที่ยุติกระบวนการ แต่การ<>โต้แย้งนั้นมีผลอย่างไร

ฉันได้อ่านหน้าคู่มือสำหรับkillคำสั่ง แต่ยังไม่สามารถหาสาเหตุและสิ่งที่<>ใช้


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

20
ดูเหมือนว่าผู้เขียนไซต์จะยุ่งกับสตริง HTML ซอร์สโค้ดมี: kill&nbsp;-9 &lt;<pid for="" nbsp="" postmaster="" process="">&gt;</pid>ดังนั้นพวกเขาจึงอาจจะเขียนkill -9 <pid>และบรรณาธิการตลกบางคนก็ใช้เวทมนตร์ทั้งหมดเพื่อสร้าง<pid>แท็ก
fedorqui

9
@fedorqui, <pid for="" nbsp="" postmaster="" process="">นั่นสมเหตุสมผลดี! มันหมายถึงการพูดว่า "pid สำหรับกระบวนการ postmaster" และเป็น PostgreSQL PID หลักในการฆ่า ดังนั้นโพสต์จึงตั้งใจจะบอกว่าkill -9 <pid for postmaster process>ปริศนาได้รับการแก้ไข
dw8547

9
มุ่งหน้าขึ้น: อย่าสร้างkill -9นิสัย killใช้เพียงแค่ SIGTERM ช่วยให้กระบวนการปิดระบบได้อย่างสวยงาม SIGKILL ( -9) เป็นตัวเลือกนิวเคลียร์
John Kugelman

@fedorqui: ฉันค่อนข้างแน่ใจว่ามันฆ่า -9 <<pid>>
Joshua

คำตอบ:


16

คุณควรแทนที่<>ด้วยรหัสกระบวนการ เพื่อรับ ID กระบวนการคุณสามารถใช้คำสั่ง

ps -aux

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

หากคุณมีอินสแตนซ์เดียวของกระบวนการคุณสามารถใช้คำสั่งที่pkillมีชื่อของกระบวนการเช่น

pkill -9 mysql

1
... killallและถ้ามีหลายกรณีคุณสามารถใช้ นอกจากนี้หากคุณต้องการ PID pgrepจะช่วยประหยัดการล่าสัตว์ผ่านpsเอาต์พุต
Zanna

3
@Zanna pkill ฆ่ากระบวนการทั้งหมดที่ตรงกับความเป็นจริงไม่ใช่เพียงกระบวนการเดียว
ด่าน

7
โปรดทราบว่า pkill จะฆ่ากระบวนการใด ๆ ที่มีmysqlคำว่า ตัวอย่างเช่นหากคุณมีกระบวนการที่เรียกว่าmysqlและอีกmysql-python(เพียงตัวอย่าง) ทั้งสองจะถูกฆ่าด้วยคำสั่งนั้น
ด่าน

3

มันคือ

<pid> [...]
      Send signal to every <pid> listed.

ใน manpage มีคำอธิบายอยู่ใน<>เครื่องหมายคำพูดเสมอ


2

<>ใน man page หมายถึงแทนที่<>ด้วย PID

นอกจากคำตอบของเฟลิเชียนโดยใช้psคำสั่งแล้วคุณยังสามารถใช้topหรือhtop

top -d 10

ใช้-d <>(ระยะเวลา) เพื่ออัปเดตทุก<>วินาที

เพื่อฆ่ากระบวนการเพียงแค่บันทึก PID และฆ่า ID กระบวนการด้วย:

kill -9 xxxx

หมายเหตุ: สำหรับhtopคุณจะต้องพิมพ์htop -d 100เช่น; 10วินาที

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.