मैं एक संपूर्ण के रूप में प्रोग्रामिंग के लिए अपेक्षाकृत नया हूं और कुछ ट्यूटोरियल मुझे ls -l
निर्देशिका में फ़ाइलों को देखने के लिए उपयोग करने के लिए कह रहे हैं और अन्य कह रहे हैं ll
। मुझे पता है कि ls
एक छोटी सूची है, लेकिन क्या अन्य दो के बीच अंतर है?
ls
मैं खोल में डाल दिया किसी भी अन्य आदेश के बीच क्या अंतर है ? यदि मैं टाइप करता which ls
हूं alias ls='ls --color=auto' /bin/ls
तो मुझे मिलता है , लेकिन अगर मैं टाइप करता हूं (उदाहरण के लिए) तो which cd
मुझे मिलता है /usr/bin/which: no cd in (........)
। संपादित करें: मैंने इसे फिर से कोशिश की which mkdir
और मुझे मिल गया /bin/mkdir
। इन आदेशों के बीच क्या अंतर है कि उनमें से कुछ संग्रहीत हैं (?) /usr/bin
और कुछ स्पष्ट रूप से नहीं हैं?
$PATH
। ls
बहुत बार अलियास किया जाता है, इसलिए आपका शेल उपनाम (जो बाइनरी पर पूर्वता लेता है) और बाइनरी की वास्तविक स्थिति (आपके मामले में /bin/ls
) की रिपोर्ट करता है। अगर which
नहीं मिला cd
, तो कुछ बहुत गलत प्रतीत होता है।
cd
एक शेल बिल्ट कीवर्ड है, न कि फाइलसिस्टम में पाया जाने वाला प्रोग्राम। उपयोग करें type cd
और type ls
देखें कि मेरा क्या मतलब है। कुछ आदेश केवल शेल बिल्डरों द्वारा ओवरराइड किए जाते हैं: में echo
मौजूद है /bin/echo
, लेकिन bash
वास्तव में अधिकांश आधुनिक गोले, एक अंतर्निहित echo
फ़ंक्शन को इसके बजाय कहा जाता है (जिसमें आमतौर पर विस्तारित विशेषताएं होती हैं)। type
वास्तव में आपको बताता है कि यह कौन सा है।
which ll
। आपको शायद पता चलेगा किll
वास्तव में इसके लिए एक उपनाम हैls -l
।