जब एक फ़ोल्डर में "" और ".." का क्या अर्थ है?


34

जब मैं ls -aफ़ोल्डर में छिपी हुई फाइलों को देखता था तो डिफ़ॉल्ट रूप से बनाई गई 2 छिपी हुई फाइलें थीं जो इस दो फाइलों का महत्व है .और ..?

ls -a

का उत्पादन

.  ..

मैं उन्हें एक बहुत का उपयोग करें जब मैं कर एक ls -laके बाद से यह मेरे निर्देशिका मैं तैयार हूं पर अनुमतियों और स्वामित्व और एक ऊपर निर्देशिका मैं तैयार हूं दिखाई देगा।
मार्को Ceppi

मेरे पास बंद करने के लिए मतदान करने के लिए पर्याप्त प्रतिनिधि नहीं है, लेकिन मैंने इस प्रश्न पर एक झंडा लगा दिया है क्योंकि यह बहुत अधिक सवाल है जिसका उत्तर 3 सेकंड में Google खोज कर दिया जा सकता है (और क्योंकि हाल ही में सवालों के बारे में चर्चा हुई थी कि हैं भी अतः ब्लॉग पर आसान)।
zzzzBov

1
^ zzzzBov अपनी उदारता के लिए स्पेनिश में धन्यवाद।
mr_eclair

जवाबों:


40

. वर्तमान फ़ोल्डर है।

.. वर्तमान फ़ोल्डर के ऊपर फ़ोल्डर है - वह फ़ोल्डर जिसमें वर्तमान फ़ोल्डर है।

आप कभी-कभी उस एकल बिंदु का उपयोग करते हुए देखेंगे जब कोई अपने होम डायरेक्टरी से स्क्रिप्ट चलाना चाहता है। उदाहरण के लिए: ./install-app.sh। इसका मतलब है कि फ़ाइल "इंस्टॉल-app.sh" वर्तमान निर्देशिका में है। यह केवल /home/username/directory/install-app.sh करने के लिए मान्य होगा। उसी तरह, यदि आप फ़ाइल को मूल निर्देशिका में है, तो भी कर सकते हैं। यह इस तरह से क्यों है, इसका कारण केवल नेविगेशन के लिए नहीं है, बल्कि यह भी है कि आपके होम डायरेक्टरी में किसी फ़ाइल को गलत तरीके से लिखकर सिस्टम एप्लिकेशन को गलती से छुपाना संभव नहीं होना चाहिए।


100% सही है। उन्हें हुक के रूप में सोचो, जो हर एक निर्देशिका में हैं। उनका उपयोग विशुद्ध रूप से नेविगेशन के लिए किया जाता है। आप पाएंगे कि यह सिर्फ एक लिनक्स मानक नहीं है, बल्कि खिड़कियों पर भी है। शायद यूनिक्स और मैक पर भी ऐसा ही है, लेकिन मैंने कभी भी अपने कमांड प्रॉम्प्ट में चारों ओर नहीं खेला है।
Ctuchik

1
cd / ; cd ..: पी
htorque

1
यह FreeBSD पर भी ऐसा ही है, इसलिए मुझे लगता है कि यह मैक पर भी है, क्योंकि मैक डार्विन BSD पर आधारित है।
अज़ेंडेल

htorque: क्या आप शायद एक धार्मिक व्यक्ति हैं? :)
जो-एर्लेंड शिनस्टैड

यह मैक ओएस एक्स पर है (जो किसी अन्य यूनिक्स की तरह ही काम करता है, हालांकि जीयूआई इसमें से कुछ को छिपाता है)। मैक ओएस क्लासिक उनके पास नहीं था; ::पिछले निर्देशिका के लिए इस्तेमाल किया गया था। :उनके बिना रास्ते वर्तमान निर्देशिका थे। अन्यथा, एक पूर्ण पथ (डिस्क नाम के साथ शुरू) की उम्मीद थी, घटकों द्वारा सीमांकित के साथ :। उदाहरण के लिए:Macintosh HD:System Folder:Finder
derobert

4

वे स्वयं (और।) और माता-पिता (..) निर्देशिका के लिए हार्डलिंक हैं। वे तब बनाए जाते हैं जब आप कोई निर्देशिका क्रेट करते हैं। उन्हें कभी भी हटाया नहीं जा सकता है (उनके द्वारा बताई गई निर्देशिका को हटाए बिना)।

यदि आप एक निर्देशिका बनाते हैं:

mkdir /tmp/foo

आप देख सकते हैं, कि वास्तव में 2 हार्डलिंक / tmp / foo हैं:

drwxr-xr-x 2 michal michal 4096 2011-08-07 18:40 /tmp/foo
           ^---- two hardlinks

पहला / tmp / निर्देशिका से / tmp / foo की ओर इशारा करता है, और दूसरा 'है।' के साथ / tmp / foo / को इंगित करते हुए स्व।


2

इसके अलावा, ध्यान दें कि आप छुपी हुई फ़ाइलों सहित सभी फ़ाइलों को सूचीबद्ध करने के लिए ls -A(इसके बजाय ls -a) का उपयोग कर सकते हैं , लेकिन निर्देशिकाओं .और ..निर्देशिकाओं को छोड़कर ।


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