Kodokon kodokon.com

सापेक्ष पाथ, पूर्ण पाथ और वाइल्डकार्ड

किसी भी फ़ाइल को पूर्ण या सापेक्ष पाथ से दर्शाएँ, और एक साथ कई फ़ाइलों पर काम करें।

8 मिनट · 3 प्रश्न

इस पाठ को Kodokon में खोलें

किसी फ़ाइल की जगह बताने के दो तरीके हैं, ठीक वैसे ही जैसे कोई पता बताना। पूर्ण पाथ पूरा डाक-पता है: यह रूट से शुरू होता है और कहीं से भी काम करता है। macOS और Linux पर यह हमेशा एक स्लैश / से शुरू होता है, उदाहरण के लिए /home/yoann/my-project/index.html। Windows पर यह किसी ड्राइव अक्षर से शुरू होता है, उदाहरण के लिए C:\Users\yoann\my-project

वहीं सापेक्ष पाथ "बाईं ओर दूसरा दरवाज़ा" जैसा कुछ है: यह उस फ़ोल्डर से शुरू होता है जिसमें आप इस समय हैं। सब कुछ कह देने के लिए तीन चिह्न काफ़ी हैं। बिंदु . का मतलब है मौजूदा फ़ोल्डर। दो बिंदु .. का मतलब है पैरेंट फ़ोल्डर। टिल्डा ~ का मतलब है आपका होम फ़ोल्डर। रास्ता बनाने के लिए इन्हें स्लैश से एक के बाद एक जोड़ते जाते हैं।

BASH
cd /home/yoann/my-project
cd ~/my-project
cd ../other-project
cat ./src/index.html
cp ../photo.jpg .
वही फ़ोल्डर पहले पूर्ण रूप में, फिर सापेक्ष रूप में, और मौजूदा फ़ोल्डर में एक कॉपी।

जब आपको दस फ़ाइलों पर काम करना हो, तो आप दस कमांड टाइप नहीं करने वाले। शेल वाइल्डकार्ड पहचानता है, जिन्हें पैटर्न भी कहते हैं: ऐसे विशेष अक्षर जो एक या कई अनजान अक्षरों की जगह ले लेते हैं। तारा * अक्षरों की किसी भी शृंखला की जगह लेता है, चाहे वहाँ एक भी अक्षर न हो। प्रश्नवाचक चिह्न ? ठीक एक अक्षर की जगह लेता है। चौकोर कोष्ठक [ ] अपने भीतर गिनाए गए अक्षरों में से किसी एक को स्वीकार करते हैं।

BASH
ls *.html
ls src/*.css
ls photo-?.jpg
ls report-202[45].pdf
cp *.txt archive/
हर .html फ़ाइल, किसी सब-फ़ोल्डर की .css फ़ाइलें, photo-1 से photo-9 तक, और 2024 तथा 2025 की रिपोर्टें।

आख़िर में एक बात जो बहुत सारी परेशानी से बचाती है: macOS और Linux पर फ़ाइलों के नाम केस-सेंसिटिव होते हैं, यानी छोटे और बड़े अक्षरों में फ़र्क माना जाता है। Photo.jpg और photo.jpg दो अलग फ़ाइलें हैं, और ls photo* पहली वाली को नहीं ढूँढ पाएगा। Windows यह फ़र्क नहीं करता। इसीलिए जो प्रोजेक्ट आपकी Windows मशीन पर चलता है, वह उसे होस्ट करने वाले Linux सर्वर पर सिर्फ़ एक बड़े अक्षर की वजह से नाकाम हो सकता है।

ज्ञान जांच

सुनिश्चित करें कि आपको इस पाठ के मुख्य बिंदु याद हैं।

  1. macOS या Linux पर, पूर्ण पाथ हमेशा किससे शुरू होता है?
    • एक बिंदु . से
    • एक स्लैश / से
    • एक टिल्डा ~ से
    • मौजूदा फ़ोल्डर के नाम से
  2. पैटर्न *.html किससे मेल खाता है?
    • हर उस फ़ाइल से जिसका नाम .html पर खत्म होता है
    • सिर्फ़ उस फ़ाइल से जिसका नाम ठीक *.html है
    • फ़ोल्डर की हर फ़ाइल से, चाहे उसका प्रकार कुछ भी हो
  3. आप हर .tmp फ़ाइल को बिना जोखिम के मिटाना चाहते हैं। आप क्या एहतियात बरतते हैं?
    • rm *.tmp चलाते हैं और फिर ls से जाँचते हैं
    • पहले ls *.tmp चलाते हैं यह देखने के लिए कि क्या मिटेगा
    • कोई नहीं, शेल हमेशा पुष्टि माँगता है