Directory Navigation Commands (pwd, cd, mkdir, rmdir, ls, tree)

Linux tree के around move करना मुट्ठी भर commands है: pwd दिखाता है आप कहाँ हैं, cd आपको move करता है, ls list करता है यहाँ क्या है, mkdir और rmdir directories बनाते और हटाते हैं, और tree पूरी branch draw करता है।

10 min read · 7 cards · 2 checks

Read in: English · हिन्दी · ગુજરાતી


Theory

Server पर अपना Way ढूँढना

आप campus server में log in करते हैं और अपनी home directory, /home/riya में land करते हैं। अब क्या? आपको जानना है आप कहाँ हैं, यहाँ क्या है देखना है, कहीं और move करना है, और अपने work के लिए folders बनाने हैं। यही यह पहला set of commands करता है।

ये navigation commands वे हैं जो आप सबसे ज़्यादा type करेंगे, comfortable होने के बाद दिन में सैकड़ों बार। ये छोटे और तेज़ हैं। यह lesson family introduce करता है और दिखाता है ये एक real session में साथ मिलकर कैसे काम करते हैं।

At a glance

Commandयह क्या करता है
pwdPrint working directory: दिखाता है आप currently कहाँ हैं
lsCurrent directory के contents list करता है (ls -l long form, ls -a hidden दिखाता है)
cd dirdir में change directory करता है; अकेला cd home जाता है, cd .. एक level ऊपर जाता है
mkdir dirएक नई directory बनाता है (mkdir -p missing parent directories भी बनाता है)
rmdir dirएक directory हटाता है, पर सिर्फ़ अगर यह empty है
treeDirectory और इसके contents को एक tree की तरह draw करता है

Practical

एक Navigation Session

$ pwd
/home/riya
$ mkdir -p project/src      # make project and project/src in one go
$ cd project
$ pwd
/home/riya/project
$ ls
src
$ cd ..                     # go back up to /home/riya
$ pwd
/home/riya

Formula

दो Shortcuts जो आप लगातार इस्तेमाल करेंगे

`.` का मतलब है यहाँ (current directory) और `..` का मतलब है parent (एक level ऊपर)। तो cd .. एक directory ऊपर move करता है, और ./script.sh का मतलब है 'यह script जो ठीक यहाँ है'।

यह भी: बिना argument के `cd` आपको सीधे /home/riya घर ले जाता है, कहीं से भी, और / से शुरू होने वाला path absolute है (root से) जबकि बिना वाला relative है (आप अभी कहाँ हैं वहाँ से)। ये कुछ ideas, ., .., home, absolute बनाम relative, around move करने का पूरा grammar हैं।

Quiz

आप /home/riya/project/src में हैं और आप cd .. चलाते हैं (एक level ऊपर जाना)। अब आप कहाँ हैं?

  1. /home/riya, सीधे home jump करते हुए
  2. /home/riya/project, src से एक level ऊपर
  3. /home/riya/project/src, unchanged
  4. / , root directory
Show the answer

/home/riya/project, src से एक level ऊपर

'..' का मतलब है parent directory, तो cd .. आपको exactly ONE level ऊपर move करता है: /home/riya/project/src से /home/riya/project तक। Option A बिना argument वाले cd को describe करता है (जो home जाता है) या cd ~, यहाँ से cd .. को नहीं, एक level ऊपर जाना project में land करता है, पूरी तरह home नहीं। Option C ग़लत है: cd .. actually आपकी location बदलता है। Option D ग़लत है: cd .. सिर्फ़ एक level ऊपर जाता है, पूरी तरह root तक नहीं। याद रखिए: .. एक step ऊपर है; कई levels ऊपर जाने के लिए आप इसे repeat करते हैं (cd ../..) या एक absolute path इस्तेमाल करते हैं।

Think first

rmdir Files वाली एक Directory Delete करने से क्यों मना करता है?

आप एक folder पर rmdir try करते हैं जिसमें files हैं और यह 'Directory not empty' से fail हो जाता है। rmdir इतना cautious क्यों है? फिर tap कीजिए।

Show the answer

क्योंकि rmdir deliberately SAFE है: यह सिर्फ़ EMPTY directories हटाता है, तो यह accidentally आपके work से भरा एक folder destroy नहीं कर सकता। अगर आप एक directory पर rmdir चलाएँ जिसमें अभी भी files या subdirectories हैं, यह मना कर देता है और 'Directory not empty' print करता है, जो एक helpful guard है, यह आपको बता रहा है 'यहाँ अभी भी कुछ है; क्या आप sure हैं?'। एक directory AND इसके अंदर सब कुछ हटाने के लिए, आपको एक अलग, ज़्यादा powerful command चाहिए, rm -r (recursive), जो आप अगले lesson में मिलेंगे। वह command genuinely dangerous है क्योंकि यह बिना किसी recycle bin के पूरी branch delete कर देता है, तो Linux everyday rmdir को harmless रखता है और आपको consciously rm -r की तरफ़ reach कराता है जब आप actually एक पूरी directory wipe करने का मतलब रखते हैं। Design philosophy यह है कि easy, common command safe होनी चाहिए, और destructive वाली को आपसे इसे explicitly ask करवाना चाहिए। rmdir की fussiness आपको protect कर रही है; warning respect कीजिए और rm -r तक escalate करने से पहले check कीजिए।

Summary

Key takeaways

  • pwd आपकी current directory दिखाता है; ls इसके contents list करता है (ls -l long, ls -a hidden files शामिल करता है)।
  • cd आपको move करता है: cd dir एक directory में enter करता है, cd .. एक level ऊपर जाता है, अकेला cd home जाता है।
  • mkdir एक directory बनाता है (mkdir -p कोई भी missing parent directories भी बनाता है); tree branch draw करता है।
  • '.' current directory का मतलब है और '..' parent का; ये relative navigation drive करते हैं।
  • / से शुरू होने वाला path absolute है (root से); अन्यथा यह आप कहाँ हैं इससे relative है।
  • rmdir सिर्फ़ EMPTY directories हटाता है; एक non-empty वाली 'Directory not empty' से fail होती है (पूरी वालों के लिए, carefully, rm -r इस्तेमाल कीजिए)।
  • Memory hook: pwd कहाँ, ls क्या, cd move, mkdir बनाओ, rmdir empty-हटाओ।

Study this properly

This page is the lesson to read. In Gri-Learn the same topic is a graded deck: the self-checks are scored and your weak topics are tracked. Free to start.

Start this topic

Already have an account? Sign in

More from Basic Linux Commands

Gri-Learn · syllabus-mapped B.C.A. lessons in English, Hindi and Gujarati

Directory Navigation Commands (pwd, cd, mkdir, rmdir, ls, tree) · Linux Operating System (LOS) (Minor-04) · Gri-Learn