সিহাদ, পাওয়ারশেল সম্ভবত এখানে আপনার সেরা বাজি।
নীচের কোডটি ব্যবহার করে একটি ফোল্ডারে সমস্ত অ-ইংলিশ অক্ষর খুঁজে পেতে আমি একটু পরীক্ষা করেছি
Get-ChildItem c:\TurkishFileNames\ | where-object {$_.name -match "[^\x00-\x80]+"}
এটি সেই সমস্ত অ-ইংরাজী ফাইলের নাম ফেরত দেয়। তারপরে আপনি এগুলি সরানোর জন্য আইটেমটি পাস করতে পারেন তবে প্রথমে নিশ্চিত করুন যে আপনি সঠিক নাম পেয়ে যাচ্ছেন। এখানে একটি বলি হ'ল আপনি 'ফোল্ডার' নাম সম্পর্কে কথা বলছিলেন এবং আমি এটি ফাইলের নাম দিয়ে পরীক্ষা করেছি।
তবুও, আমি বিশ্বাস করি আপনি একই কৌশল ব্যবহার করতে পারেন। আপনার যদি পাওয়ারশেল 3.0.০ বা 4.0 ইনস্টল করা থাকে, আপনি গেট-চাইল্ড আইটেম ব্যবহার করার সময় কেবল ফোল্ডারের নামগুলি প্রদর্শন করতে-ডিরেক্টরি ব্যবহার করতে পারেন:
Get-ChildItem c:\TurkishFolderNames\ -directory
বাকিগুলিও একই রকম হতে চলেছে। আপনি মাইক্রোসফ্ট থেকে পাওয়ারশেল 3.0 বা 4.0 ডাউনলোড করতে পারেন
http://www.microsoft.com/en-us/download/details.aspx?id=34595 (ডাব্লুএমএফ 3.0)
http://www.microsoft.com/en-us/download/details.aspx?id=40855 (WMF 4.0)
উইন্ডোজ 7 পাওয়ারশেল ২.০ নিয়ে এসেছিল, আপনি যদি এটির সাথে আঁকেন তবে আপনি কেবল ডিরেক্টরি পেতে পুরানো বাক্য গঠনটি ব্যবহার করতে পারেন:
Get-ChildItem C:\TurkishFolderNames\ | ? {$_.PsIsContainer -eq $true}
তারপরে আপনি বাকীগুলির সাথে এগিয়ে যেতে পারেন:
Get-ChildItem C:\TurkishFolderNames\ | ? {$_.PsIsContainer -eq $true} | ? {$_.name -match "[^\x00-\x80]+"}
-r
:) এছাড়াও আমার একের পর এক চরিত্র লেখার দরকার ছিল[\xb1\xc4]