मैं अलग-अलग कंप्यूटरों पर समय के साथ इकट्ठा हुई पाठ फ़ाइलों के एक बड़े समूह के एन्कोडिंग को एकजुट कर रहा हूं। मैं मुख्यतः ISO-8859-1 से UTF-8 जा रहा हूँ। यह अच्छी तरह से एक फ़ाइल धर्मान्तरित:
recode ISO-8859-1..UTF-8 file.txt
मैं निश्चित रूप से सभी फाइलों के लिए स्वचालित बैच प्रसंस्करण करना चाहता हूं, और बस प्रत्येक फ़ाइल के लिए उपरोक्त चलाने से समस्या होती है कि फाइलें किसकी हैं पहले से UTF-8 में एन्कोडेड, उनके एन्कोडिंग को तोड़ा जाएगा। (उदाहरण के लिए, ISO-8859-1 में मूल रूप से 'ä' वर्ण इस तरह दिखाई देगा, जिसे UTF-8 के रूप में देखा जाता है, यदि उपरोक्त रिकोड दो बार किया गया है: � -> ä -> ä
)
मेरा सवाल यह है कि, जरूरत पड़ने पर ही किस तरह की स्क्रिप्ट फिर से शुरू होगी , अर्थात। केवल उन फ़ाइलों के लिए जो पहले से ही एन्कोडिंग में नहीं थीं (UTF-8 मेरे मामले में)?
रिकोड मैन पेज को देखने से, मैं समझ नहीं पा रहा था कि मैं ऐसा कुछ कैसे कर सकता हूं। इसलिए मुझे लगता है कि यह आसानी से किसी फ़ाइल की एन्कोडिंग की जांच करने के लिए या कम से कम अगर यह UTF-8 है या नहीं, तो यह उबालता है। यह उत्तर तात्पर्य आप मान्य यूटीएफ -8 फाइलों को रिकोड के साथ पहचान सकते हैं, लेकिन कैसे? किसी भी अन्य उपकरण भी ठीक होगा, जब तक कि मैं एक सशर्त स्क्रिप्ट में परिणाम का उपयोग कर सकता हूं ...