मुझे नहीं लगता कि आप एक पोर्टेबल अजगर फैशन में ऐसा कर सकते हैं करते हैं। लेकिन दो संभावनाएं हैं।
- जानकारी
ps
कमांड से उपलब्ध है ताकि आप इसका विश्लेषण कर सकें।
- यदि आपके पास
proc
फ़ाइल सिस्टम के साथ कोई सिस्टम है, तो आप फ़ाइल /proc/<pid>/status
फ़ाइल खोल सकते हैं और PPid:
वाली लाइन की खोज कर सकते हैं, फिर उस पीआईडी के लिए ऐसा ही करें।
उदाहरण के लिए निम्न स्क्रिप्ट आप अपने पीआईडी, PPID और PPPID, अनुमतियों को तैयार हो जाएगा:
#!/bin/bash
pid=$$
ppid=$(grep PPid: /proc/${pid}/status | awk '{print $2'})
pppid=$(grep PPid: /proc/${ppid}/status | awk '{print $2'})
echo ${pid} ${ppid} ${pppid}
ps -f -p "${pid},${ppid},${pppid}"
पैदा करता है:
3269 3160 3142
UID PID PPID C STIME TTY TIME CMD
pax 3142 2786 0 18:24 pts/1 00:00:00 bash
root 3160 3142 0 18:24 pts/1 00:00:00 bash
root 3269 3160 0 18:34 pts/1 00:00:00 /bin/bash ./getem.sh
जाहिर
, आप उन फ़ाइलों को खोलने होगा पायथन के साथ।
os.getpppid()? – paxdiablo
हाँ और बेहतर होगा os.pnid (pid, n) या बस os.getppid (pid) –