2011-10-21 34 views
5

विशेषज्ञ,लिनक्स खोल उपयोगिता के लिए स्रोत कोड

मैं Linux शेल कमांड पिडॉफ़ के लिए स्रोत कोड कैसे देखूं? संबंधित प्रश्नों के उत्तर के आधार पर मैंने जीएनयू कोर्यूटिल में चेक किया। यह वहाँ नहीं है ..

+0

Google 'pidof.c' के लिए Google, बहुत सारे परिणाम हैं। – zoul

उत्तर

5

आप उबंटू तरह डेबियन प्रणाली पर हैं, तो आप इन पंक्तियों पर कुछ कोशिश कर सकते हैं: dpkg -S <utility>, यह आप जो पैकेज बता देंगे इस उपयोगिता को स्थापित किया; तो आप apt-get source <package-name> का उपयोग कर स्रोत प्राप्त कर सकते हैं। प्राप्त करने के लिए स्रोत सुनिश्चित करें कि आप Ubuntu पर /etc/apt/sources.list
में deb-src प्रविष्टि उदाहरण के लिए मैं का उपयोग किया है:

$ dpkg -S pidof 
sysvinit-utils: /bin/pidof 
sysvinit-utils: /usr/share/man/man8/pidof.8.gz 

तो पैकेज का नाम sysvinit-utils है

$ apt-get source sysvinit-utils 
Reading package lists... Done 
Building dependency tree  
Reading state information... Done 
Picking 'sysvinit' as source package instead of 'sysvinit-utils' 
NOTICE: 'sysvinit' packaging is maintained in the 'Svn' version control system at: 
svn://svn.debian.org/pkg-sysvinit/sysvinit/trunk 
... 
dpkg-source: info: extracting sysvinit in sysvinit-2.87dsf 
dpkg-source: info: unpacking sysvinit_2.87dsf-4ubuntu17.4.tar.gz 

स्रोत पैकेज उठाया। यह एसवीएन के बारे में भी सूचित करता है जहां स्रोत बनाए रखा जाता है।

$ ls sysvinit* 
sysvinit_2.87dsf-4ubuntu17.4.dsc sysvinit_2.87dsf-4ubuntu17.4.tar.gz 

sysvinit-2.87dsf: 
contrib/ COPYRIGHT debian/ doc/ man/ obsolete/ README src/ 

मुझे यकीन है कि गैर-डेबियन सिस्टम पर इसके बराबर होना चाहिए। Google आपकी मदद कर सकता है।
उम्मीद है कि यह थोड़ा सा मदद कर सकता है!

संपादित करें: yum के लिए एक छोटी सी जानकारी:
1. पैकेज के लिए खोज: yum whatprovides <package_name> तो pidof के लिए हो सकता है:

yum whatprovides `which pidof` 

2. स्रोत प्राप्त करें: yumdownloader --source <source_name>। इसके लिए आपको yum-utils की आवश्यकता हो सकती है। this link
पर अधिक जानकारी हालांकि मैंने कोशिश नहीं की है, लेकिन मुझे लगता है कि आप एक शॉट दे सकते हैं!

+0

धन्यवाद। मैं आरएच एंटरप्राइज़ लिनक्स पर हूं। मैंने rpm -qf/sbin/pidof किया जो SysVinit-2.86-15.el5.x86_64 दिया। फिर मैंने SysVinit-2.86-15.el5.src.rpm डाउनलोड किया, इसे स्थापित किया और tar -xvf sysvinit-2.86.tar.gz/usr/src/redhat/SOURCES/से किया। मैं killall5.c – Manohar

+0

@ संथोश में pidof कार्यान्वयन देखता हूं: आह ठीक है ... मैंने बस कुछ सामान googled और संपादन में जोड़ा! वैसे जो भी आपके लिए काम करता है वह अच्छा है! आपको यह सही मिला, यह 'killall5.c' में है –

2

मैं यहाँ pidof स्रोत कोड मिला: Source Code

+0

यह व्यस्त बॉक्स कार्यान्वयन है, जो भारी उठाने के लिए लाइब्रेरी फ़ंक्शन 'find_pid_by_name()' पर निर्भर करता है। –

+0

कैसे [यह] (http://code.google.com/p/secured/source/browse/src/pidof.c?spec=svnd53f28f2475e9a969735475ae95d1e217e40a66e&r=d53f28f2475e9a969735475ae95d1e217e40a66e) के बारे में कैसे। – tr4656

संबंधित मुद्दे