मान लें कि मेरे पास मेरे घर फ़ोल्डर में फ़ोल्डरों ~/a/b हैं, और फ़ोल्डर बी में 'symlink' नामक '..' के लिए एक प्रतीकात्मक लिंक है। तब मैं बैश में निम्न कार्य:प्रतीकात्मक लिंक पर सीडी/बैश का व्यवहार
[email protected]:~$ cd a/b/symlink
[email protected]:~/a/b/symlink$ pwd -P
/home/hm/a
[email protected]:~/a/b/symlink$ cd ..
[email protected]:~/a/b$ pwd -P
/home/hm/a/b
pwd -पी वर्तमान कार्यशील निर्देशिका प्रिंट, सभी सांकेतिक लिंक अपसंदर्भन। अंत में कार्यशील निर्देशिका/घर/एचएम/ए/बी क्यों नहीं है, और नहीं/home/hm?
FYI करें, आप उपयोग कर सकते हैं '-ओ physical' सेट या' इस व्यवहार स्थायी बनाने के लिए -P' निर्धारित किया है। – Kevin
.. मुझे यह उल्लेख करना चाहिए कि कार्यान्वयन शायद @ गीकोसौर के वर्णन के अनुरूप है; मैं अपने मूल्य के साथ 'OLDPWD' को ओवरराइट करने की अपेक्षा नहीं करता, वास्तव में 'cd ..' व्यवहार को प्रभावित करेगा। – sarnold
मैं मानता हूं कि मुझे नहीं लगता कि OLDPWD वास्तव में यहां कुछ भी करता है। मैंने इसे "सीडी" द्वारा एक सिम्लिंक चेन को तीन स्तरों में गहराई से नीचे और फिर "सीडी .." कर कुछ बार परीक्षण किया। यह ठीक काम किया। यदि OLDPWD का उपयोग किया गया था, तो यह काम नहीं करेगा। OLDPWD केवल एक निर्देशिका को याद करता है, और एक से अधिक निर्देशिका वापस जाने के लिए उपयोग नहीं किया जा सका। इस प्रकार, OLDPWD का उपयोग नहीं किया जाता है। –