OSX में आप एक हार्ड लिंक कैसे बना सकते हैं?


8

ठीक है, यह मुझे अपना सिर पीट रहा है। OS X में, टर्मिनल विंडो में हार्ड लिंक बनाने के लिए, आप इसे केवल टाइप करने में सक्षम होंगे ...

ln a.txt b.txt

... और इस से एक हार्ड लिंक बनाना चाहिए a.txtकरने के लिए b.txt। सरल और सीधे आगे।

जब मैं उस कथन को निष्पादित करता हूं, तो निश्चित रूप से पर्याप्त है, फाइंडर में b.txtसही साथ दिखाई देता है a.txt। हालाँकि, a.txtTextEdit का उपयोग करने के बाद भी , b.txtअभी भी मूल डेटा है! दूसरे शब्दों में, ऐसा लगता है कि इसने एक प्रति का प्रदर्शन किया, लिंक का नहीं, कठोर या अन्यथा।

मुझे कोई मतलब नहीं है! तो क्या कोई मुझे बता सकता है कि मैं यहां क्या गलत कर रहा हूं?


आप इसे कैसे संपादित करते हैं?
user151019

मैं अभी TextEdit में फाइल खोलता हूं और कुछ टेक्स्ट जोड़ता हूं। मैंने सिर्फ एक ब्लॉक को बार-बार काटा और कॉपी किया। खोजक में, 'A.txt' का अब 'b.txt' की तुलना में एक अलग आकार है जिसका अर्थ है कि वे वास्तव में डिस्क पर दो अलग (डेटा) फ़ाइलों की ओर इशारा करते हैं।
मार्क ए। डोनोहे

जिज्ञासु। मैंने फ़ाइलों को संपादित करने के लिए vi का उपयोग करके यह कोशिश की और लिंक कायम रहा। TextEdit के साथ, जैसा कि आप निरीक्षण करते हैं, यह टूट जाता है।
भयानक

2
अपने प्रश्न को संपादित करने पर विचार करें, यह देखते हुए कि आपकी धारणाएँ गलत थीं।
डैनियल बेक

जवाब स्पष्ट रूप से दिखाते हैं कि हार्ड-लिंक, वास्तव में, काम कर रहे हैं; शीर्षक से पता चलता है अन्यथा। यह ओएस एक्स अनुप्रयोगों के फाइल-रिप्लेसमेंट व्यवहार है जो आपकी हार्ड लिंक से छुटकारा दिलाता है, जो कि एक अलग मुद्दा है।
डैनियल बेक

जवाबों:


14

इस व्यवहार का कारण सीधा है, और यह संबंधित है कि अधिकांश मैक ओएस एक्स अनुप्रयोगों में फ़ाइलों को कैसे बचाया जाता है: एटोमिक रूप से।

क्या होता है कि फ़ाइल की एक प्रतिलिपि एक अस्थायी स्टेजिंग क्षेत्र को लिखी जाती है, और फिर मूल फ़ाइल को बदलने के लिए ले जाया जाता है।

यह, काफी स्वाभाविक रूप से, कड़ी को तोड़ता है।


हाँ ... लगता है कि कोई भी OS X ऐप है जो कोको के दस्तावेज़-आधारित दृष्टिकोण का उपयोग करता है। कि वास्तव में बदबू आ रही है! मैं देख रहा हूँ कि क्या मैं इसके बजाय सॉफ्ट-लिंक्स (उपनाम) का उपयोग करके दूर हो सकता हूं। हालांकि यह सुनिश्चित नहीं है कि मैं DefaultKeyBinding.dict का संपादन कर रहा हूं जो सिस्टम का उपयोग करता है। उम्मीद है कि यह लिंक का अनुसरण करने के लिए पर्याप्त स्मार्ट है। हम देखेंगे!
मार्क ए। डोनोहे

सच है। यही कारण है कि यूनिक्स-वाई सिस्टम कॉन्फ़िगरेशन फ़ाइलों को संपादित करना ओएस एक्स जीयूआई संपादकों में एक दर्द है और viइसे पूरा करने में बहुत आसान है - यह फ़ाइल पर लिखने की अनुमति देने के लिए पर्याप्त नहीं है, आपको फ़ोल्डर की भी आवश्यकता है!
डैनियल बेक

BTW, सॉफ्ट-लिंक काम नहीं करते हैं, इसलिए मुझे लगता है कि मुझे उन सभी जगहों पर सहेजने के बाद स्क्रिप्ट कॉपी करने के लिए वापस आ रहा हूं, जहां मुझे इसकी आवश्यकता है। Stinx!
मार्क ए। डोनोहे

@MarqueIV: सिमिलिंक काम कर सकते हैं।
विलीह टोटलैंड

मेरा मतलब यही था। पद गलत मिला। विशेष रूप से यह OS X की प्रमुख बाइंडिंग के लिए है। यह वास्तविक फ़ाइल को एक विशिष्ट स्थान पर होने की उम्मीद करता है और सहानुभूति के साथ काम नहीं करता है। हालाँकि यह हार्ड लिंक के साथ काम करता है, हालाँकि जैसा कि कहा गया है, चूंकि संपादक कोको-दस्तावेज़-आधारित है, मैं लिंक को तोड़े बिना फाइल को संपादित नहीं कर सकता, इसलिए ऐसा लगता है कि मुझे मैन्युअल रूप से कॉपी करने (या फिर से सेटिंग) का सहारा लेना होगा दस्तावेज़ को संपादित करने के बाद) कड़ी कड़ियाँ)। इष्टतम नहीं है, लेकिन कुछ भी नहीं एक त्वरित स्क्रिप्ट ठीक नहीं होगा।
मार्क ए। डोनोहे

3

यदि दिखाई देता है, तो सुपरसियर की इस प्रविष्टि को देखें , कि यह TextEdit की एक विशेषता है। तो, हार्ड लिंक बनाने के लिए सामान्य तरीका सही है, लेकिन TextEdit इस तरह से व्यवहार करता है जैसे इसे तोड़ने के लिए। (लिंक कहता है कि यह एक नई फ़ाइल बनाता है और फिर संपादन के बाद इसे पुरानी फ़ाइल पर ले जाता है।)


हाँ ... जैसा कि आपने इस पोस्ट में देखा कि SU सही पर। यह सिर्फ TextEdit नहीं है। यह सभी दस्तावेज़-आधारित ऐप लगता है। स्टिंक्स क्योंकि इसका मतलब है कि मैं लिंक-आधारित टूल का उपयोग हार्ड लिंक्ड फाइलों को संपादित करने के लिए नहीं कर सकता।
मार्क ए। डोनोहे

यह केवल TextEdit नहीं है, लेकिन सभी कोको-आधारित अनुप्रयोग हैं जो दस्तावेज़ आर्किटेक्चर का उपयोग करते हैं, जो सबसे अधिक करते हैं।
मार्क ए। डोनोहे

2

ध्यान दें कि emacs डिफ़ॉल्ट रूप से (सभी यूनिक्स में) इस (चौंकाने वाले!) व्यवहार को प्रदर्शित करता है, सोचा कि कारण थोड़ा अलग है (यह बहुत कम डिस्क स्थान स्थितियों में करने के लिए "सुरक्षित" चीज़ है)। हालाँकि, इसे कई तरीकों से कॉन्फ़िगर किया जा सकता है।

make-backup-files(उपयोग C-h v make-backup-files) और के लिए प्रलेखन देखें

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