ubuntu å vs osx å?


10

यकीन नहीं है कि यह एक ubuntu या osx सवाल है, लेकिन मैं यहाँ शुरू करूँगा। यदि अधिक उपयुक्त हो तो प्रश्न को AskDifferent में स्थानांतरित करने के लिए इसे मॉड पर छोड़ दूंगा।

मैंने ऐप्पल मशीन पर scp का उपयोग करके एक फ़ाइल ubuntu से osx में स्थानांतरित कर दी। मैंने ऐप्पल मशीन पर फाइल को एडिट किया। फिर मैंने फ़ाइल वापस ले ली, फिर से Apple मशीन पर scp का उपयोग किया।

स्रोत फ़ाइल का फ़ाइल नाम दस्तावेज़ / trettiårsfirarätare था

  • सोर्स कोड: Documents/trettiårsfirarätare

जो फ़ाइल नाम मुझे वापस मिला, उसका नाम दस्तावेज़ / trettiårsfirarätare था

  • सोर्स कोड: Documents/trettia˚rsfirara¨tare

जबकि ये समान दिख सकते हैं, अक्षर ä और ä वास्तव में उनके बीच भिन्न होते हैं। किसी भी बिंदु पर मैंने फ़ाइल का नाम नहीं बदला।

यह मेरे लिए थोड़ा तकनीकी अंतर रखता है, मैंने अभी फाइल का नाम बदल दिया है जो उबंटू å और ä को मानता है, लेकिन इसने मेरी जिज्ञासा को गुदगुदा दिया।

क्या आप मुझे समझा सकते हैं कि ऐसा क्यों हुआ?


1
इस समस्या में यूनिकोड शामिल होगा। यदि आप क्या होता है scp (या समतुल्य।) से नकल ओएस एक्स के लिए Ubuntu (ओएस एक्स के लिए या Ubuntu), लेकिन Ubuntu मशीन पर?
david6

मैंने इस प्रश्न को एक मैक के रूप में देखा और लाइनों के बीच कोई अंतर नहीं देखा, अब जब मैं अपने उबंटू लैपटॉप पर वापस आया, तो मैंने ताक्वाट के संपादन से पहले ही वर्गों को तुरंत देखा।
अलवर

मैं सेब मशीन sshd नहीं होने के कारण ubuntu पर ubuntu से osx करने के लिए scp-ing की कोशिश नहीं करेगा, लेकिन osx पर scp-ing फ़ाइल नाम को बदलने के लिए पर्याप्त है। मैंने इसे केवल एक बार आगे पीछे कॉपी किया था और नाम बदल दिया था, इसलिए ऐसा लगता है कि scp नाम बदलने वाला एप्लिकेशन है।
अज़ीद

जवाबों:


8

मूल नाम "दस्तावेज / trettiårsfirarätare" में, अक्षर "å" को आंतरिक रूप से U + 00E5 LATIN SMALL LETTER A के रूप में RING ABOVE के रूप में दर्शाया गया है। यह इस चरित्र का सामान्य प्रतिनिधित्व है। फ़ाइल नाम में आपको वापस मिल गया है, इसे चरित्र जोड़ी U + 0061 LATIN SMALL LETTER A U + 030A COMBINING RING ABOVE में बदल दिया गया है। यह अनुमेय है, लेकिन आम नहीं है; इसका मतलब है कि "å" को आधार चरित्र में "ए" और डियाक्रिटिक मार्क के संयोजन के रूप में विघटित करना। इन अभ्यावेदन को यूनिकोड में विहित रूप से समतुल्य घोषित किया जाता है; इसका मतलब है कि दृश्य प्रस्तुति सामान्य रूप से समान होने की उम्मीद है, लेकिन इसकी आवश्यकता नहीं है (यहाँ, एसओ, जैसा कि फ़ायरफ़ॉक्स में देखा गया है, यह नहीं है - यह फ़ॉन्ट और रेंडरिंग सॉफ़्टवेयर पर निर्भर करता है)। कार्यक्रम उन्हें समकक्ष मान सकते हैं, लेकिन उन्हें इसकी आवश्यकता नहीं है। एक फ़ाइल सिस्टम में, उदाहरण के लिए, उन्हें अच्छी तरह से अलग माना जा सकता है।

इसी तरह, "ä" अक्षर U + 0061 लेटिन SMALL LETTER A U + 0308 COMBINING DIAERESIS से विघटित हो जाता है।

इसका कारण स्पष्ट नहीं है। संभवतः कुछ सॉफ़्टवेयर "सोचता है" इसे स्ट्रिंग्स को एक सामान्यीकरण रूप में परिवर्तित करना चाहिए जो सभी डीकॉम्पोज़ी वर्णों को विघटित करता है, शायद यूनिकोड सामान्यीकरण फ़ॉर्म डी (एनएफडी)

बाकी थोड़ा और रहस्यमय है। आपके द्वारा वापस लिए गए फ़ाइलनाम के लिए "सोर्सकोड" के रूप में आप जो निर्दिष्ट करते हैं, "दस्तावेज़ / trettia˚rsfirara ,tare", विघटित रूप मंगाए गए हैं: विशेषांक चिह्न को उनके अंतर क्लोन, वर्ण "˚" और "¨" से बदल दिया गया है "। यह सामान्य नहीं है, और यह डेटा की पहचान और उसके प्रतिपादन दोनों को बदलता है।


SourceCode का हिस्सा मेरे द्वारा नहीं जोड़ा गया था। मैं देख सकता हूं कि उनके दृश्य प्रतिनिधित्व में अक्षरों के बीच अंतर है, पहले å में दूसरी की तुलना में एक छोटी अंगूठी है, लेकिन इसके अलावा तार समान दिखते हैं। हालांकि बैश टैब पूरा करने का उपयोग करते समय वे eqvivalent नहीं हैं।
azzid

असल में Å अपने आप ही एक पत्र है, यह नहीं है सिर्फ एक है एक एक विशेषक चिह्न के साथ, जैसे एक पत्र है और सिर्फ और नहीं n एक विशेषक चिह्न के साथ।
कैस्परल्ड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.