जब मैं विंडोज में डॉस प्रॉम्प्ट से एक ऐप चलाता हूं, तो विचाराधीन कमांड अक्सर वर्तमान निर्देशिका में नहीं होता है, लेकिन पाथ पर्यावरण चर के माध्यम से पाया जाता है। जिस वास्तविक EXE को चलाया जा रहा है उसका पथ खोजने का सबसे तेज़ तरीका क्या है?
जब मैं विंडोज में डॉस प्रॉम्प्ट से एक ऐप चलाता हूं, तो विचाराधीन कमांड अक्सर वर्तमान निर्देशिका में नहीं होता है, लेकिन पाथ पर्यावरण चर के माध्यम से पाया जाता है। जिस वास्तविक EXE को चलाया जा रहा है उसका पथ खोजने का सबसे तेज़ तरीका क्या है?
जवाबों:
विस्टा पर आप खोज मेनू में निष्पादन योग्य का नाम टाइप कर सकते हैं, जब यह परिणाम में प्रदर्शित होता है, तो r-क्लिक करें और मेनू से "फ़ाइल स्थान खोलें" चुनें।
यदि कार्यक्रम अभी भी चल रहा है और आप Sysinternals से प्रोसेस एक्सप्लोरर का उपयोग कर रहे हैं, तो आप प्रक्रियाओं की सूची और गुणों का चयन करने में निष्पादन योग्य पर क्लिक कर सकते हैं। छवि टैब में आपके पास निष्पादन योग्य के लिए रास्ता है।
एक और तरीका विंडोज पॉवर्सशेल का उपयोग करना है, बिना उद्धरण के कमांड " गेट -कमांड एक्जीक्यूटेबल" का उपयोग करें और आप जिस निष्पादन योग्य की तलाश कर रहे हैं उसके लिए आपको रास्ता मिल जाएगा। कमांड के लिए शॉर्टकट gcm है, इसलिए इस तरह का उपयोग करें "gcm calc"
get-process processname | % { $_.path }
निष्पादन योग्य-पथ को खोजने के लिए भी टाइप कर सकते हैं । हालांकि, यह हर प्रक्रिया के लिए काम नहीं करता है। मुझे उस नियम के लिए अभी तक नहीं मिला है ...
यदि आपके पास साइबरविन स्थापित है, तो आप हमेशा 'जो' कमांड का उपयोग कर सकते हैं
C:> which notepad
/c/WINDOWS/system32/notepad
which dir
" ...
निम्नलिखित आज़माएँ:
@rem file which.bat (must be placed somewhere in %PATH%)
@for %%e in (%PATHEXT%) do @for %%i in (%1%%e) do @if NOT "%%~$PATH:i"=="" echo %%~$PATH:i
जब आप which notepad
कमांडलाइन में टाइप करते हैं ( cmd.exe
):
C:\>which notepad
C:\Windows\System32\notepad.exe
यदि आप वर्तमान में चल रहे किसी प्रोग्राम के बारे में पूछ रहे हैं, तो विंडोज कमांड लाइन के लिए कुछ भी आउट-ऑफ-द-बॉक्स पेश नहीं करता है, जहां तक मुझे जानकारी है, इससे आपको निष्पादन योग्य का पूरा रास्ता मिल जाता है।
यदि आप उस प्रोग्राम के बारे में पूछ रहे हैं जिसे आप कमांड लाइन पर लागू करने में सक्षम हैं, तो आप where
कमांड का उपयोग कर सकते हैं :
C:\> where fsutil
C:\Windows\System32\fsutil.exe
C:\>
यह उन सभी कार्यक्रमों के लिए काम करता है, जिन्हें आप अपने वर्तमान पैट वैरिएबल या वर्तमान वर्किंग डायरेक्टरी में इनवाइट कर सकते हैं। यह डीआईआर जैसे अंतर्निहित कमांड का पता नहीं लगाएगा, लेकिन इसकी उम्मीद की जानी चाहिए।