स्क्रिप्ट ext4 फ़ाइल नाम को ntfs में बदलने के लिए


7

ext4 फ़ाइल नाम में कुछ वर्णों की अनुमति देता है जो ntfs नहीं करता है। क्या फ़ाइल नाम में उन वर्णों को बदलने के लिए कोई स्क्रिप्ट है?


pathchkमदद कर सकता है। यह रूपांतरण नहीं करता है, लेकिन आपको यह बताना चाहिए कि क्या फ़ाइल को रूपांतरित करने की आवश्यकता है।
मिकेल

जवाबों:


2

निम्नलिखित को फ़ाइल नाम में सभी अस्वीकृत पात्रों को अंडरस्कोर से बदलना चाहिए। ध्यान दें कि इससे कई फ़ाइलों को एक ही चीज़ में बदला जा सकता है। उदाहरण के लिए, यदि आपके पास दो फाइलें थीं file>/txtऔर file<.txt, दोनों का नाम बदल दिया जाएगा file_.txt, और एक दूसरे को हटा देगा, इसे हटा देगा।

find /path/to/ntfs/mount/ -print0 | xargs -0 rename 's{[\\:*?"<>|]}{_}g'

यह आदेश नाम बदलने के पर्ल संस्करण के लिए मान्य है, जो कि डेबियन प्रदान करता है। आपका डिस्ट्रो थोड़ा अलग सिंटैक्स के साथ नाम बदलने का एक संस्करण प्रदान कर सकता है।


1
यह वाक्यविन्यास केवल उसी के लिए मान्य है perl-rename, जो renameडेबियन पर है। अन्य डिस्ट्रोस उपयोग-लाइनक्सrename से एक सरल के साथ आते हैं ।
ग्रैविटी

इसके अलावा, 1) प्रतिस्थापित न करें /, क्योंकि इससे वैध पथ विभाजक प्रभावित होंगे; 2) gसभी पात्रों से मेल खाने के लिए विकल्प की आवश्यकता है, न कि केवल पहली घटना।
ग्रैविटी

मुझे लगता है कि कुछ पात्रों को _ के बजाय निकटतम / सबसे तार्किक लोगों में बदलना बेहतर है। उदाहरण के लिए <और> की जोड़ी क्रमशः (और) या दोनों% या ~ में परिवर्तित की जानी चाहिए, जबकि ":" बेहतर रूप से प्रतिस्थापित किया जा सकता है "-"
phuclv
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.