এই অত্যন্ত আকর্ষণীয় প্রশ্নের উত্তরগুলি পড়ার পরে এবং অ্যান্ড্রয়েড (এক্সফ্যাট) এবং একটি গাড়ি বিনোদন সিস্টেম (ভিফ্যাট) এর জন্য এসডি কার্ড নিয়ে কিছু পরীক্ষা-নিরীক্ষা করার পরে, আমি এই ছোট্ট বাশ স্ক্রিপ্টটি নিয়ে এসেছি।
#! /bin/bash
DST=$1
# copy music to FAT media
find music/ Music/ -type f | while read f ; do
d=$DST/$( echo $f | sed 's/[^-A-Za-z0-9/._ ()]/_/g' )
echo :$d:
mkdir -p "$(dirname "$d")"
cp -n "$f" "$d"
done
এটি তর্ক হিসাবে গন্তব্য (মাউন্ট পয়েন্ট) লাগে find
এবং আমার সংগীত সংগ্রহস্থলের সমস্ত ফাইল সনাক্ত করতে ব্যবহার করে।
প্রতিটি ফাইল পাথের জন্য, এটি গন্তব্যটি পূর্বনির্ধারিত করে এবং কোনও আপত্তিকর চরিত্রকে আন্ডারস্কোর দিয়ে প্রতিস্থাপনের মাধ্যমে গন্তব্য পথ এবং ফাইলের নাম গণনা করে _
। (বর্ণ, সংখ্যা, আমি অক্ষরের একটি শ্বেত তালিকা ব্যবহার -
, /
, .
,
। (
, )
এবং _
) কোন অবাঞ্ছিত যতিচিহ্ন মুছে ফেলার জন্য।
লোকেলের উপর নির্ভর করে, এটি পথ এবং ফাইলের নামগুলিতে উচ্চারণযুক্ত অক্ষরগুলি ছেড়ে দেবে, যা আধুনিক FAT ফাইল সিস্টেমগুলির জন্য ঠিক আছে, যেমনটি মনে হয়।
প্রতিটি গন্তব্য ফাইলের পাথ এবং নামের জন্য ডিরেক্টরিগুলি ব্যবহার করে প্রয়োজনীয়গুলি তৈরি করা হয় mkdir -p
, তবে ফাইলটি অনুলিপি করা হয়, যদি না এটি ইতিমধ্যে বিদ্যমান থাকে।
"
বিভিন্ন স্থানে উদ্ধৃতি অক্ষর নোট করুন , তাদের ফাঁক হওয়া থেকে ফাঁকা জায়গাগুলির সাথে পাথ এবং নাম রাখতে হবে।