यह पता चला है कि
ln -s SOURCE TARGET
एक सिमलिंक बुलाया लक्ष्य जो प्रतीकात्मक स्ट्रिंगSOURCE
से जुड़ा हुआ है बनाने के लिए महत्वपूर्ण है। यदि SOURCE
एक सापेक्ष पथ है (यानी, यह /
से शुरू नहीं होता है), तो यह निर्देशिका के सापेक्ष व्याख्या की गई है कि TARGET
है। यदि यह एक पूर्ण पथ है, तो यह एक पूर्ण पथ है। यदि यह एक स्ट्रिंग है जो पथ नहीं हो सकती है, या एक गैर-मौजूदा पथ या फ़ाइल शामिल है, या अन्यथा वैध पथ स्ट्रिंग नहीं है, कोई फर्क नहीं पड़ता। ln -s
यह जांच नहीं करता है कि SOURCE मौजूद है या यहां तक कि एक वैध पथ भी है। आप लगभग किसी भी छोटी सी स्ट्रिंग को स्टोर कर सकते हैं जो आप चाहते थे।
तो आप ऐसा करते हैं जब:
$ ln -s torbrowser/start-tor-browser ~/bin/torbrowser
तुम क्या कर रहे है, मोटे तौर पर:
- नाम
torbrowser
के साथ अपने bin
उपनिर्देशिका के अंदर एक निर्देशिका प्रविष्टि बनाएँ।
- (सापेक्ष) पथ
torbrowser/start-tor-browser
नई सिमलिंक एक परिपत्र है कि नई निर्देशिका प्रविष्टि एक प्रतीकात्मक कड़ी (सिमलिंक) बनाओ। ~/bin/torbrowser
~/bin/torbrowser/start-tor-browser
से जुड़ा हुआ है, जिसका अर्थ है कि सिम्लिंक को हल करने के लिए आपको सिम्लिंक का पालन करना होगा। आप इसे उपयोग करने का प्रयास करते हैं, तो आप देखेंगे:
$ cat ~/bin/torbrowser
cat: /home/joshlf13/bin/torbrowser: Too many levels of symbolic links
$
कभी कभी - अक्सर, यहां तक कि - एक रिश्तेदार पथ को सिमलिंक करने की क्षमता अत्यंत उपयोगी है।
$ mv apps /usr/local/apps
: सिमलिंक को तोड़ने के बिना, याद है यह संस्करण स्ट्रिंग, मैं भी संपूर्ण फ़ोल्डर कहीं और स्थानांतरित कर सकते हैं है बिना
$ ln -s apps/my_fancy_app_v2.63.1 apps/my_fancy_app
अब, न केवल मैं my_fancy_app कॉल कर सकते हैं: एक सामान्य उपयोग संस्करण संख्याओं से छुटकारा हो रही है
लेकिन अन्य बार - जैसा कि आपके उदाहरण में, मुझे लगता है - आपको एक पूर्ण पथ पर सिमलिंक करने की आवश्यकता है।
अनुमतियों के लिए के रूप में, सिमलिंक हमेशा अनुमतियाँ lrwxrwxrwx
है, क्योंकि वास्तविक फ़ाइल आपरेशन द्वारा प्रयोग किया जाता अनुमतियाँ वास्तविक फ़ाइल पर अनुमतियों को कर रहे हैं। (आप इस बारे में सोच सकते हैं कि कोई भी सिम्लिंक का पालन कर सकता है, लेकिन यह बिल्कुल सही नहीं है: उन्हें किसी भी निर्देशिका के लिए पढ़ने की अनुमति भी चाहिए, जिन्हें उन्हें अनुवर्ती करने की आवश्यकता है। अधिक सटीक रूप से, जो कोई भी सिम्लिंक देख सकता है उसे नाम देख सकता है जब करने के लिए भेजा
ln -s स्रोत लक्ष्य
सही है, लेकिन भ्रामक: अंक के लिए, भले ही वे उस नाम के साथ फ़ाइल के लिए कोई उपयोग कर सकते है
एकदम सही है कि है; धन्यवाद! – joshlf
एक टूटी हुई लिंक न पाने के लिए पूर्ण पथ डालना महत्वपूर्ण है –