वर्तमान पर्ल स्क्रिप्ट के लिए प्रक्रिया आईडी प्राप्त करना


11

मुझे वर्तमान स्क्रिप्ट चलाने वाली पर्ल प्रक्रिया के लिए प्रक्रिया आईडी कैसे मिलेगी? getppid () ps -ea के रूप में समान पिड वापस नहीं करता है | जीआरपी वहाँ एक आसान तरीका है या मैं सिर्फ अपनी स्क्रिप्ट के भीतर ps -ea कमांड चलाता हूं और जानकारी के अन्य टुकड़ों को ट्रिम करता हूं?


शायद stackoverflow.com पर माइग्रेट किया जाना चाहिए
इयान सी।

जवाबों:


13

आप $$अपनी स्क्रिप्ट चलाने वाले पर्ल इंटरप्रेटर की प्रक्रिया आईडी प्राप्त करने के लिए उपयोग कर सकते हैं :

iancs-imac:Documents ian$ cat test.pl 
print "$$\n";
sleep(10000);
exit()

ians-imac:Documents ian$ perl test.pl 
42291

दूसरे शेल में:

iancs-imac:~ ian$ sudo ps -ef | grep perl
  501 42291 42281   0   0:00.00 ttys000    0:00.01 perl test.pl
  501 42297 42280   0   0:00.00 ttys001    0:00.00 grep perl

विशेष पर्ल चर के बारे में अधिक जानने के लिए:

perldoc perlvar

या उस जानकारी का आधिकारिक ऑनलाइन संस्करण देखें


2

$$इयान के उल्लेख के अलावा , मैं कोड को अधिक पठनीय बनाने का प्रशंसक हूं।

$PIDयदि आप use Englishएलियास को सक्षम करने के लिए , पर्ल अंत तक महामारी का समर्थन करते हैं ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.