टर्मिनल में $ PATH टाइप करने के बाद ऐसी कोई फ़ाइल या निर्देशिका नहीं


13

जब मैं टर्मिनल में लिखता हूं

echo $PATH

मेरा आउटपुट है

:/home/bo/bin:/usr/local/bin:/usr/sbin:/usr/local/sbin:/usr/bin:/sbin:/bin

लेकिन जब मैं लिखता हूं:

$PATH

यह आउटपुट मुझे सही समझ में नहीं आता, आउटपुट है:

bash: :/home/bo/bin:/usr/local/bin:/usr/sbin:/usr/local/sbin:/usr/bin:/sbin:/bin: No such file or directory

और मेरा सवाल यह है कि यह "ऐसी कोई फ़ाइल या निर्देशिका क्यों नहीं लिखी?" पथ निर्देशिका से हर निर्देशिका मौजूद है।

जवाबों:


20

$PATHएक चर है, जो मुझे यकीन है कि आप जानते हैं। जब उस चर को हल किया जाता है, तो यह टाइप करने :/home/bo/bin:/usr/local/bin:/usr/sbin:/usr/local/sbin:/usr/bin:/sbin:/bin:और कुछ होने की उम्मीद करने के समान होगा। कारण echo $PATHकाम करता है क्योंकि आप टर्मिनल को "क्या" बताने के बजाय इसे स्पष्ट रूप से प्रदर्शित कर रहे हैं $PATH


2

यदि आप अभी भी इसे अन्य उत्तरों से प्राप्त नहीं करते हैं, तो यह इस प्रकार है:

$ echo the quick brown fox
the quick brown fox
$ the quick brown fox
bash: the: command not found

$ echo and/or the black and white cats
and/or the black and white cats
$ and/or the black and white cats
bash: and/or: No such file or directory

हर कमांड लाइन का पहला शब्द एक हो गया है आदेश ।  echoऐसा आदेश है।  the, and/orऔर :/home/bo/bin:/usr/local/bin:/usr/sbin…नहीं हैं। और, जाहिरा तौर पर, जब आप एक कमांड लाइन टाइप करते हैं जो उस शब्द से शुरू होती है जो कमांड नहीं है, तो बैश कहते हैं कि No such file or directoryअगर शब्द में एक या अधिक /वर्ण हैं, और command not foundयदि यह नहीं है।


1

लिख कर

$ पथ

आप वास्तव में कमांड लाइन पर इसकी सामग्री का विस्तार करने के अलावा और कुछ नहीं कर रहे हैं:

: / घर / बो / बिन: / usr / स्थानीय / बिन: / usr / sbin: / usr / स्थानीय / sbin: / usr / bin: / sbin: / bin

और यह एक वैध आदेश नहीं है, जो आपको मिल रहे संदेश के लिए वैध रूप से अग्रणी है।

आपको क्या उम्मीद थी कि केवल टाइपिंग ही $PATHकरेगा?


मैं उस उम्मीद का अनुमान लगाता हूं जो $PATHइसे निष्पादित करने की कोशिश किए बिना स्क्रीन को चर को अनिवार्य रूप से प्रिंट करेगा, हालांकि, यह मामला नहीं है।
19 को

0

लिनक्स पर टर्मिनल एक का इंतजार कर रहा है command, $ PATH एक कमांड नहीं है, एक है variable

जब आप लिखते हैं echo $PATHतो आप चर की सामग्री पूछ रहे होते हैं और कमांड के साथ echoइसे स्क्रीन पर दिखाते हैं।


0

चर $PATHमें कॉलोनों द्वारा अलग-अलग निर्देशिकाएं होती हैं। शेल एक निष्पादन योग्य फ़ाइल या अन्य कमांड (जैसे, शेल में निर्मित कमांड, जैसे cd) इनपुट के रूप में आने की उम्मीद कर रहा है। इस तरह के रूप में कमाते हैं lsऔर catकेवल $ PATH निर्देशिकाओं में से एक में स्थित निष्पादनयोग्य हैं। कॉलोनों द्वारा एक साथ जंजीर से बंधे कई निर्देशिका आमतौर पर एक उचित यूनिक्स फ़ाइल पथ नहीं बनाते हैं। सूचना: यदि आप बृहदान्त्र के बिना निर्देशिकाओं में से केवल एक दर्ज करते हैं, तो आपको एक अलग आउटपुट मिलता है।

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