/Users/lukas
एक "निरपेक्ष" पथ है। अग्रणी /
आपके फाइल सिस्टम के रूट डायरेक्टरी का प्रतिनिधित्व करता है।
lukas
एक "सापेक्ष" पथ है। जैसा कि यह रूट के लिए लंगर नहीं डाला गया है, इसका मतलब है " वर्तमान निर्देशिका में इसके लिए देखो "। जब तक वर्तमान निर्देशिका नहीं है /Users
(या इसमें कुछ अन्य निर्देशिका lukas
है), यह विफल हो जाएगा।
तो, चलिए आपके उदाहरणों का पता लगाते हैं /Users/lukas
:
$ cd Documents/
/Users/lukas/Documents
दिए गए सापेक्ष पथ => निर्देशिका के लिए परिवर्तन "दस्तावेज़" जो अंदर है /Users/lukas
।
$ cd /Documents
-bash: cd: /Documents: No such file or directory
निरपेक्ष पथ दिया => निर्देशिका में परिवर्तन /Documents
।
$ pwd
/
इससे पता चलता है कि आपने अब वर्किंग डायरेक्टरी को रूट डायरेक्टरी में बदल दिया है, /
(हालांकि cd
ऐसा करने का कमांड नहीं दिखाया गया था)।
$ cd Users
/Users
दिए गए सापेक्ष पथ => निर्देशिका के अंदर परिवर्तन "उपयोगकर्ता" जो कि अंदर है /
।
$ cd /Users
/Users
निरपेक्ष पथ दिया => निर्देशिका में परिवर्तन /Users
।
हर बार प्रमुख है कि अग्रणी /
। इसके साथ, मार्ग निरपेक्ष है। इसके बिना, मार्ग सापेक्ष है। यह नियम असंदिग्ध है क्योंकि सभी निरपेक्ष पथ से शुरू होते हैं /
(क्योंकि रूट डायरेक्टरी को हमेशा कहा जाता है /
)।
यहाँ कुछ pseudocode को उस एल्गोरिथ्म का वर्णन करते हुए शिथिल किया गया है:
MakePathAbsolute(path):
if <path> starts with '/'
return <path>
else
return <current directory>/<path>
cd
इस एल्गोरिथ्म के माध्यम से जाने के लिए आप जो तर्क पास करते हैं ; जिस निर्देशिका को आप बदलते हैं, वह वह पथ है जो एल्गोरिथ्म देता है।
आगे की पढाई: