बैच एक बार में संगीत फ़ाइलों से ट्रैक नंबर हटा दें


1

मेरे पास एक फ़ोल्डर में लगभग 600 एमपी 3 गाने की फाइलें हैं। सभी ट्रैकों में उनके नाम से पहले एक नंबर है। मैं सभी फाइलों से ट्रैक-नंबर निकालना चाहता हूं। हां मुझे पता है कि मैं उन फ़ाइलों का नाम बदल सकता हूं और संख्याओं को मैन्युअल रूप से हटा सकता हूं। लेकिन सभी फाइलों को एक-एक करके बदलने में इतना समय लगेगा। मैं जानना चाहता हूं कि क्या कोई और तरीका है जो एक बार में ट्रैक नंबर को हटा सकता है? आपकी जानकारी के लिए मैं Ubuntu 12.04 का उपयोग कर रहा हूँ। कृपया मेरी मदद करें। कोई सुझाव और मदद वास्तव में प्रशंसनीय होगी। धन्यवाद


क्या सभी संख्याएं समान रूप से लंबी हैं या डैश से अलग हैं? (उदाहरण के लिए सभी MP3 01-songname.mp3 हैं। यह डैश पर फ़िल्टरिंग की अनुमति देगा, जैसे cut -d'-' -f2-कि। यह एक के साथ जोड़ा जा सकता हैfor song in *.mp3 l do something with mv and with cut ; done
हेन्नेस

जवाबों:


2
  1. Ubuntu सॉफ्टवेयर सेंटर से EasyTAG स्थापित करें।
  2. EasyTAG खोलें और उस निर्देशिका में ब्राउज़ करें जिसमें आपकी सभी संगीत फ़ाइलें हैं।
  3. अपने सभी एमपी 3 गाने फ़ाइलों का चयन करें। वे सभी मध्य फलक में सूचीबद्ध होंगे, जिसमें उप-निर्देशिकाओं में गाने वाली फाइलें भी शामिल हैं।
  4. मेनू बार में "स्कैन फाइल (एस)" ​​बटन पर क्लिक करें, जिसमें एक लाइट-ग्रीन और व्हाइट पेज की तस्वीर के साथ एक आइकन है।
  5. "स्कैनर" विकल्प में "फ़ाइल और निर्देशिका का नाम बदलें" चुनें।
  6. इनपुट फ़ील्ड में "फ़ाइल का नाम बदलें और निर्देशिका" % t टाइप करें ।
  7. "फ़ाइल सहेजें" बटन पर क्लिक करें। इसमें एक हरे रंग के तीर के साथ हार्ड ड्राइव की तस्वीर के साथ एक आइकन है। पुष्टि करें कि आप चयनित फ़ाइलों के सभी पर लागू करने के लिए नाम बदलना चाहते हैं।

यही सब है इसके लिए। आपने अभी सभी 600 फ़ाइलों का नाम बदला है। यह मेटाडेटा टैग नहीं बदलता है, केवल फ़ाइल नाम।


1

ऐसा करने का सबसे आसान तरीका renameकमांड-लाइन पर है। उदाहरण के लिए:

rename 's/^\d\d //' ./*.mp3

... यह एक फ़ाइल कहा जाता हो जाएगा 01 trackname.mp3में trackname.mp3, और काम कर निर्देशिका में सभी * .mp3s पर काम करेंगे।

\dके लिए प्रतिध्वनि है [0-9], और ^इसका अर्थ है 'स्ट्रिंग की शुरुआत' (ताकि यह ट्रैकनाम के भीतर किसी भी संख्या से छुटकारा न मिले)। आप अपने इच्छित /^\d\d /किसी भी पैटर्न से मिलान करने के लिए परिवर्तन कर सकते हैं - यदि आप छुटकारा पाना चाहते हैं -, तो आप ऐसा कर सकते हैं।

वैकल्पिक रूप से, आप बस बैश का उपयोग कर सकते हैं:

for f in ./*.mp3; do mv "$f" "${f#[0-9][0-9] }"; done

यदि आपके पास कई निर्देशिकाओं में आपकी फाइलें हैं, तो आपको उपयोग करने की आवश्यकता होगी find। मान लें कि आप हर * .mp3 को ~ / संगीत और सभी उपनिर्देशिकाओं में नया नाम देना चाहते हैं:

find ~/Music -type f -name '*.mp3' -exec rename 's/^\d\d //' {} \;
##  or
find ~/Music -type f -name '*.mp3' -exec bash -c 'mv "$0" "${0#[0-9][0-9] }"' {} \;
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.