จะทราบได้อย่างไรว่าโฟลเดอร์ใดที่กระบวนการกำลังทำงานอยู่?


13

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

มันแตกต่างจากคำถามสุดท้ายของฉันเล็กน้อยในเรื่องนี้ ฉันจะรู้เส้นทางที่แน่นอนของกระบวนการทำงานได้อย่างไร

คำตอบ:



7

คำตอบของ Rom HUB ที่ได้รับ:

readlink /proc/<PID>/cwd

หรือแม้กระทั่ง

readlink /proc/$(pgrep <program_name>)/cwd

+1 ผลลัพธ์ของ readlink สามารถแยกวิเคราะห์ได้ดีขึ้นในสคริปต์
Marco Leogrande

2

คุณไม่สามารถบอกได้ว่ากระบวนการใดถูกเรียกใช้ จาก เฉพาะที่มันอยู่ในขณะนี้ คือ . มองไปที่ cwd ("ไดเรกทอรีการทำงานปัจจุบัน") ลิงก์แทน exe.



1

ฉันเดาคำสั่งนี้จะทำงาน มันเป็นวิธีแก้ปัญหาเพียงเล็กน้อย แต่ก็ใช้งานได้กับเครื่องของฉัน

สำหรับ strlist ใน $ (ps e PID) ให้ทำถ้า [$ {strlist: 0: 4} = "PWD ="]; echo $ {strlist: 4}; fi; เสร็จแล้ว


0

เมื่อฉันวิ่ง

ps auxwwwe | grep executableName > dump
vim dump

ฉันสามารถค้นหาเส้นทางที่ฉันรู้ได้จากนั้นฉันก็พบว่าไดเรกทอรีย่อยที่เรียกใช้คำสั่งจาก

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