سؤال كيفية فرض ويندوز لإعادة تسمية ملف بحرف خاص؟


لدي أغنية لا يمكن لـ Windows تشغيلها لوجود علامة استفهام في اسم الملف.

"Where Have All the Cowboys Gone?.ogg" // as an example

لذلك أحاول إعادة تسميته ويشكو Windows ما إذا كنت أحاول في مستكشف أو من موجه الأوامر.

الخطأ الذي أحصل عليه عند محاولة النسخ أو إعادة التسمية أو النقل هو:

اسم الملف أو اسم الدليل أو بناء جملة تسمية وحدة التخزين غير صحيح

هل يوجد شبابيك طريقة لفرض إعادة تسمية في هذه الحالة؟

تحديث

سأراقب هذا السؤال ، لكن بعد 13 إجابة ومحاولات عديدة (بصرف النظر عن حلول الأطراف الثالثة) ، يبدو أن Windows لا يستطيع القيام بذلك (أو على الأقل لا تستطيع النوافذ الخاصة بي ، ولا الأسماء القصيرة). لذلك أنا أقبل الإجابة التي كانت الحل الأصلي على أي حال من استخدام لينكس. سيكون من اللطيف رؤية Windows يتعامل مع هذا بطريقة ما ، لذا لا تتوقف فقط لأنني قبلت هذه الإجابة ، فالسؤال لا يزال قائماً!


80


الأصل


هل لي أن أسأل كيف وصلت إلى هذه الحالة؟ لن يسمح لك Windows عمومًا بإجراء ذلك. - Michael Kohne
والجواب هو أنني حصلت على الملف من صندوق لينكس. انها في الواقع ملف. ogg أيضا. لكنني كنت أتساءل منذ أن كنت في العمل ولم أحصل على لينكس كيف أقوم بذلك في windows ... سيكون من الجيد أن أعرف - codeLes
يتيح نظام الملفات NTFS بعض الأحرف التي لا يقوم بها Windows. إذا كان Windows يلتقي مثل هذه الملفات ، فإنه b0rks. - Colonel Panic
لقد ذهبت مرة واحدة فلاش بلادي سيئة ، انتقل chkdsk الملفات إلى قطاع مختلف ولكن أبقى الأسماء التالفة التي تحتوي على أحرف ممتعة مثل CRLF أو حتى backspace. :) - Nulano
IvanChau: ليس نسخة مكررة. هذا السؤال الآخر يدور حول مساحة في الاسم ، والتي هي ، في الواقع ، قطعة من الكعكة ، على عكس هذا واحد هنا (مع حرف البدل). - Sz.


الأجوبة:


احصل على قرص مضغوط لينكس واستخدم ذلك.


42



من المنزل أستخدم linux على أي حال ... والملف على قرص صلب محمول ، كنت أتساءل فقط إذا كان بإمكان Windows التعامل معه ... شيء مثل أمر <b> Sudo </ b> أو شيء ما - codeLes
هذه مشكلة أحرف بدل ، وليست مشكلة في الإذن. تحت linux فقط حول كل شيء هو حرف صالح في اسم الملف (بما في ذلك فواصل الأسطر) تحت ويندوز ، وهناك مجموعة من الشخصيات المحجوزة ، ولا توجد طريقة فعالة للهروب منها. - salmonmoose
تأكد من أن توزيعة الأقراص المضغوطة المباشرة لديها دعم موثوق به من NTFS. لست متأكداً كيف تسير الأمور الآن ، لكني أتذكر أنه يجري بعض الوقت بالعربات الصغيرة. - Josh Hunt
تدعم توزيعات linux الحديثة مثل ubuntu بنجاح أهم ميزات NTFS. - Atmocreations
أوبونتو 9.04 لا تشوبه شائبة على الإطلاق في دعم NTFS ، مع واحد أو اثنين من المضايقات (مثل إذا كان هناك انقطاع في الطاقة ، ويمكنك التمهيد في ubuntu لحفظ بضع ثوان وقت التمهيد ، لا يمكنك الوصول إلى قسم ويندوز الخاص بك حتى التمهيد مرة أخرى في ذلك) - Phoshi


هل حاولت استخدام إصدار أسماء الملفات القصيرة من اسمها؟ على سبيل المثال

ren whereh~1.ogg where.ogg

إذا كان هو الملف الوحيد في المجلد الحالي الذي يبدأ بالحروف القليلة الأولى ، فاستخدم الأحرف الستة الأولى من الاسم (تجاهل المسافات) متبوعة بتلدة (~) ثم 1.


29



نظرًا لأن إنشاء أسماء قصيرة أمر اختياري اعتمادًا على كيفية تهيئة Windows حاليًا ، فإن Murphy يقول أن OP لديه أسماء قصيرة تم إيقافها ولن يكون للملف واحد. لمعرفة الاسم القصير إذا كان موجودًا لأي ملف ، فاستخدم DIR / X الذي سيضيف عمودًا يوضح الاسم القصير لأي ملف يختلف فيه عن الاسم الطويل ، إذا كان يحتوي على اسم واحد على الإطلاق. إذا كان هناك اسم قصير ، فستكون هذه إجابة معقولة. - RBerteig
يجب عليك فعلًا تجربة هذا ... يمكن أن تكون أسماء الملفات القصيرة مفيدة في بعض الأحيان. - alex
لا توجد أسماء قصيرة ، وحاول المثال الخاص بك وأيضا dir / x يثبت أنه لا يوجد أي المدرجة. - codeLes


  1. في Windows 7: قم بتشغيل cmd.exe في وضع Administator.
  2. مؤتمر نزع السلاح في الدليل مع أسماء الملفات.
  3. المدى: chkdsk / V / F [كانت الملفات السيئة على محرك أقراص آخر غير محرك الأقراص OS ، لذلك كان قادرا على تفكيكها. إذا كان محرك الأقراص OS ، قد تضطر إلى القيام بهذه المرحلة عند بدء التشغيل.]
  4. انتظر (قد تضطر إلى إعادة تشغيل الكمبيوتر).

كما سترى كانت النتيجة أن chkdsk حذف بالفعل الملفات بالنسبة لي. لذا ، إذا كنت تريد الاحتفاظ بالملفات ، فأنا لا أعرف ماذا أفعل ، ولكن هذا سوف يتخلص من الملفات بالتأكيد.

نتائج / سجل Cmd:

E:\islag\Music\llb>dir
 Volume in drive E is FreeAgent Drive
 Volume Serial Number is 5038-892A

 Directory of E:\islag\Music\llb

02/02/2011  12:18 PM    <DIR>          .
02/02/2011  12:18 PM    <DIR>          ..
04/04/2010  02:19 PM         4,014,099 01 Los Lonely Boys - Se?orita - www.file2
4ever.com.mp3
04/04/2010  02:18 PM         3,125,942 12 Los Lonely Boys - La Contestaci?n - ww
w.file24ever.com.mp3
               2 File(s)      7,140,041 bytes
               2 Dir(s)  87,743,991,808 bytes free

E:\islag\Music\llb>chkdsk /V
The type of the file system is NTFS.
Volume label is FreeAgent Drive.

WARNING!  F parameter not specified.
Running CHKDSK in read-only mode.

CHKDSK is verifying files (stage 1 of 3)...
  231424 file records processed.
File verification completed.
  34 large file records processed.
  0 bad file records processed.
  0 EA records processed.
  0 reparse records processed.
CHKDSK is verifying indexes (stage 2 of 3)...
18 percent complete. (29338 of 245164 index entries processed)
An invalid filename 01 Los Lonely Boys - Se?orita - www.file24ever.com.mp3 (3196
6) was found in directory 31962.
All filenames for File 31966 are invalid.
Minor file name errors were detected in file 31966.
An invalid filename 12 Los Lonely Boys - La Contestaci?n - www.file24ever.com.mp
3 (31973) was found in directory 31962.
All filenames for File 31973 are invalid.
Minor file name errors were detected in file 31973.
73 percent complete. (233817 of 245164 index entries processed)
Index entry 01 Los Lonely Boys - Se?orita - www.file24ever.com.mp3 in index $I30
 of file 31962 is incorrect.
Index entry 12 Los Lonely Boys - La Contestaci?n - www.file24ever.com.mp3 in ind
ex $I30 of file 31962 is incorrect.
  245164 index entries processed.
Index verification completed.

Errors found.  CHKDSK cannot continue in read-only mode.

E:\islag\Music\llb>dir
 Volume in drive E is FreeAgent Drive
 Volume Serial Number is 5038-892A

 Directory of E:\islag\Music\llb

02/02/2011  12:18 PM    <DIR>          .
02/02/2011  12:18 PM    <DIR>          ..
04/04/2010  02:19 PM         4,014,099 01 Los Lonely Boys - Se?orita - www.file2
4ever.com.mp3
04/04/2010  02:18 PM         3,125,942 12 Los Lonely Boys - La Contestaci?n - ww
w.file24ever.com.mp3
               2 File(s)      7,140,041 bytes
               2 Dir(s)  87,743,991,808 bytes free

E:\islag\Music\llb>chkdsk /V /f
The type of the file system is NTFS.
Cannot lock current drive.

Chkdsk cannot run because the volume is in use by another
process.  Chkdsk may run if this volume is dismounted first.
ALL OPENED HANDLES TO THIS VOLUME WOULD THEN BE INVALID.
Would you like to force a dismount on this volume? (Y/N) y
Volume dismounted.  All opened handles to this volume are now invalid.
Volume label is FreeAgent Drive.

CHKDSK is verifying files (stage 1 of 3)...
  231424 file records processed.
File verification completed.
  32 large file records processed.
  0 bad file records processed.
  0 EA records processed.
  0 reparse records processed.
CHKDSK is verifying indexes (stage 2 of 3)...
18 percent complete. (29339 of 245164 index entries processed)
Deleted invalid filename 01 Los Lonely Boys - Se?orita - www.file24ever.com.mp3
(31966) in directory 31962.
File 31966 has been orphaned since all its filenames were invalid
Windows will recover the file in the orphan recovery phase.
Correcting minor file name errors in file 31966.
Deleted invalid filename 12 Los Lonely Boys - La Contestaci?n - www.file24ever.c
om.mp3 (31973) in directory 31962.
File 31973 has been orphaned since all its filenames were invalid
Windows will recover the file in the orphan recovery phase.
Correcting minor file name errors in file 31973.
73 percent complete. (233642 of 245164 index entries processed)
Deleting index entry 01 Los Lonely Boys - Se?orita - www.file24ever.com.mp3 in i
ndex $I30 of file 31962.
Deleting index entry 12 Los Lonely Boys - La Contestaci?n - www.file24ever.com.m
p3 in index $I30 of file 31962.
  245164 index entries processed.
Index verification completed.
CHKDSK is scanning unindexed files for reconnect to their original directory.
  2 unindexed files scanned.
CHKDSK is recovering remaining unindexed files.
  2 unindexed files recovered.
CHKDSK is verifying security descriptors (stage 3 of 3)...
  231424 file SDs/SIDs processed.
Cleaning up 41 unused index entries from index $SII of file 9.
Cleaning up 41 unused index entries from index $SDH of file 9.
Cleaning up 41 unused security descriptors.
Security descriptor verification completed.
  6871 data files processed.
CHKDSK is verifying Usn Journal...
  1116928 USN bytes processed.
Usn Journal verification completed.
Correcting errors in the master file table's (MFT) BITMAP attribute.
Windows has made corrections to the file system.

 244196000 KB total disk space.
 158175168 KB in 30003 files.
     22820 KB in 6873 indexes.
         0 KB in bad sectors.
    306168 KB in use by the system.
     65536 KB occupied by the log file.
  85691844 KB available on disk.

      4096 bytes in each allocation unit.
  61049000 total allocation units on disk.
  21422961 allocation units available on disk.

E:\islag\Music\llb>dir
 Volume in drive E is FreeAgent Drive
 Volume Serial Number is 5038-892A

 Directory of E:\islag\Music\llb

02/02/2011  12:18 PM    <DIR>          .
02/02/2011  12:18 PM    <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)  87,743,979,520 bytes free

E:\islag\Music\llb>

23



عملت مثل السحر! شكر - Oren S
عملت على أكمل وجه! هذا يجب أن يكون الجواب. - enb081
@ enb081 لا ، هذا لا يجب أن يكون الجواب ، لأنه ليس لديه أي علاقة بالسؤال ، وهو كيف إعادة تسمية الملفات. شيش. - Jim Balter


chkdsk سيؤدي أحيانًا إلى إصلاح أسماء الملفات غير الصالحة. ستتلقى رسالة حول إزالة الملف لأن جميع أسماء الملفات غير صالحة ، ثم استرداد ملف مفقود. يمكنك بعد ذلك العثور على الملف في C:\found.000\file0000.chk. هذه طريقة فعالة لإزالة الملفات المشكلة ، ولكن ليس أفضل طريقة إذا كنت ترغب في الاحتفاظ بها.


10





حاول تحديد مسار UNC (انظر تسمية الملفات والمسارات ومساحات الأسماء). هذا يحصل حول جميع أنواع القيود. كنت ستفعل ذلك باستخدام \\?\ بناء الجملة.

على سبيل المثال ، إذا كان ملفك على سطح المكتب (ومحرك أقراص Windows هو C :) ، فيمكنك القيام بذلك

copy "\\?\C:\Users\codeLes\Desktop\Where Have All the Cowboys Gone?.ogg" "\\?\C:\Users\codeLes\Desktop\Where Have All the Cowboys Gone.ogg"

ملاحظة: لا يمكنك استخدام المسارات النسبية مع هذا النحو ؛ يجب عليك تحديد المسار الكامل. وانها لا تعمل مع ren الأمر ، لكنه يعمل مع copy و move.


10



أعطاه المحاولة ، وليس الحظ "اسم الملف ، اسم الدليل ، أو بناء جملة تسمية وحدة التخزين غير صحيح." شكر! سأصل إلى النقطة التي أعتقد أن الإجابة الصحيحة فيها هي استخدام لينكس لإعادة تسميته (وهو ما قمت به). - codeLes
هذه الإجابة خاطئة بالتأكيد. يكون التقييد على أحرف صالحة في برنامج تشغيل NTFS في Windows kernel. \\?\فقط يتجاوز معالجة مسار الملف في مكتبة وقت تشغيل وضع المستخدم. لا يسمح فتح أسماء الملفات تحتوي على أحرف البدل 5 (*؟ "<>) أو أحرف محجوزة أخرى (/ |: \) أو أحرف التحكم. - eryksun
وهو يعمل في حالتي: كان لدي اسم ملف بحرف Unicode في الداخل ومع زائدة \n . لا تسألني كيف أقوم بإنشائها (حسناً ، أحاول معرفة ما إذا كان بإمكانك إنشاء ملفات متعددة بالاسم نفسه في Windows). مستكشف ، FreeCommander لا يمكن حذفها ولكن \\?\C:\... يستطيع. - Dio Phung


طريقة حذف الملف العنيد كانت بفتح 7zip ، إيجاد الملف وإعادة تسمية الملف من خلال 7zip. كانت الأغنية عبارة عن أغنية بها مساحة في نهاية الملف.


9



تقصد الملف نفسه لم يكن حتى في الأرشيف ، ولكنك استخدمته 7-Zip لإعادة تسميته على نظام الملفات؟ ذكي. - Arjan
هذا يعمل بشكل رائع. لقد جربت العديد من الخيارات الأخرى هنا ، وكانت هذه أول تجربة ناجحة. - rakensi
تمكن 7zip من إعادة تسمية الملف لأن أسماء الملفات التي تنتهي بمسافات لا تمثل مشكلة في Windows. أسماء الملفات التي تحتوي على "؟" مشكلة ، ولا يمكن لـ 7zip إعادة تسميتها. - Jim Balter
إجابة خاطئة ! - user2284570
لقد عمل هذا بشكل مثالي بالنسبة لي ، لأن مشكلتي لم تكن علامات استفهام فعلية ، ولكن أحرف Unicode غريبة تظهر فقط كعلامات استفهام في مدير الملفات. من خلال استيراد الملفات (كانت هناك المئات) إلى أرشيف 7-Zip ثم تصديرها مرة أخرى ، 7-Zip ببساطة تحويل الأحرف السيئة إلى تسطير سفلي (_). ثم تمكنت من العمل مع الملفات مرة أخرى. مشكلة حلها تماما. شكرا على نصيحة ممتازة! - Jesper


استعمال ركفا. الغرض منه هو في المقام الأول لاستعادة الملفات المحذوفة ولكن لديه أيضًا خيار تضمين الملفات غير المحذوفة في الفحص.

بعد إطلاق Recuva ، رفض المعالج وحدد القرص الصحيح. ثم انتقل إلى "خيارات" ، وابحث عن خيار "فحص الملفات غير المحذوفة" وحدده ثم قم بتشغيل الفحص. بعد فترة من الوقت ، ستعرض جميع الملفات الموجودة على القرص (سواء تم حذفها أم لا). ابحث عن ملفاتك بأسماء غير صحيحة (تم إصلاح الأسماء بالفعل في العرض) ، وحددها ، وانقر بزر الماوس الأيمن وحفظها ("استرد") في مكان ما.

enter image description here

لقد فعلت ذلك للتو (على نظام التشغيل Windows XP).


7





أداة Microsoft DISKEDIT.EXE عبارة عن أداة ذات مستوى منخفض للقراءة المباشرة وكتابة بيانات القرص الخام. يجب أن تكون قادراً على تحميل الكتلة التي تحتوي على إدخال الدليل لهذا الملف وتغيير فقط المسيء "؟" شخصية إلى شيء حميدة وكتابتها مرة أخرى إلى القرص.

أفهم أن أداة diskedit Microsoft (لا أداة Norton Utilities بنفس الاسم ، وهو فقط من أجل وحدات تخزين FAT) تمت آخر مرة في Windows 2000 SP4. ولكن هناك رابط له يمكن العثور عليه هنا.

لتحديد موقع المجموعة الصحيحة ، يمكنك تنزيل نسخة تجريبية من DiskExplorer ل NTFS.

ستبدأ بـ File-> Drive ... لفتح محرك الأقراص الذي يحتوي على هذا الملف السيئ. حدد Goto-> Root Directory للحصول على عرض دليل. انتقل إلى الدليل الذي يحتوي على ملفك السيئ باستخدام ارتباطات MFT #. عندما تصل إلى هناك ، سيقول الجزء العلوي من النافذة شيئًا مثل "MFT # x12345 DIR: 'dirname'، ... blah blah blah ... starting at cluster x9302AE،... الخ الخ الخ"

انتقل الآن إلى Microsoft diskedit. قم أولاً بعمل ملف-> فتح ... وحدد Volume Name C: (إذا كان الملف على محرك الأقراص C:). اترك "اسم ملف الصوت" فارغًا. خذ هذا رقم الكتلة البداية وأدخلها في diskedit تحت Read-> NTFS Clusters ...-> بدء الكتلة (إدخاله كرقم سداسي عشرية).

الآن استخدم مفاتيح الأسهم الخاصة بك للتمرير لأسفل إلى اسم الملف السيئ. انها في unicode ، لذلك عليك أن تبحث عن شيء مثل "W.h.e.r.e.HH.a.v.e. .A.l.l .t.h.e. .C.o.w.b.o.y.s. .G.o.n.e.؟ ... ... o.g.g". ضع مؤشر الماوس فوق الحرف "3F" السيئ واكتب شيءًا آمنًا ، مثل 5F ('_'). اختر كتابة-> للكتابة مرة أخرى إلى القرص.

هناك مكان آخر للضرب (لست متأكدا ما إذا كان هناك حاجة إلى واحد أو كليهما). الآن ، مرة أخرى في DiskExplorer ، انقر على Mft # للملف السيئ. ستحصل على شاشة بشجرة على اليسار تقول "هياكل". انقر على "السمات" في الشجرة. ستعرض لك قائمة بالسمات ، سيكون أحدها شيئًا مثل 30 $ ... $ FILE_NAME. لذلك ، 30 دولارًا لديه اسم الملف. انقر على عقدة الجسم تحت عقدة 30 دولار في شجرة الهياكل. اختر القائمة View-> as Hex. عدة خطوط لأسفل ، يجب أن تشاهد اسم الملف مرة أخرى W.h.e.r.e. .H.a.v.e ... إلخ. على الجانب الأيسر من الشاشة ، سترى عمود "القطاع" الذي يعرض قطاع القرص الذي تبحث عنه.

العودة على diskedit. هل اقرأ-> القطاعات ... وأدخل رقم القطاع من DiskExplorer. كما كان من قبل ، قم بالتمرير واستبدال الحرف "3F" بنفس الحرف الذي استخدمته أعلاه. اختر كتابة> لتكتبه على القرص.

لقد فعلت كل هذا ، وأخبرتني الأدوات أنني قمت بتغيير الشخصية ، لكن المستكشف لا يفعل ذلك. يجب تخزين الدليل في مكان ما. بعد إعادة التشغيل ، يصبح التغيير مرئيًا.


5



+1 للنهج الصحيح (ولكن بشكل أكثر أو أقل) ، على أمل أن يكون فقاعًا قليلاً ويتجاوز على الأقل بعض الإجابات الخاطئة. ؛) - Sz.


حاول استخدام أداة طرف ثالث مثل كين إعادة تسمية أداة:

Screenshot of Ken Rename

أو إعادة تسمية ماجستير.

enter image description here

وهنا لائحة من أدوات إعادة تسمية الملفات.

أختبرهم بنفسي ، لكنني أقوم بتشغيل Windows Vista 64-bit؛ قد يكون التعامل مع الملفات مختلفًا.

إذا فشلت هذه الأدوات ، فقد ترغب في تقديمها ويندوز PowerShell لقطة. نرى إعادة تسمية الملفات على ال مدونة Windows PowerShell.


5



لم أحاول أداة طرف ثالث. - codeLes
حاولت دليل التأليف ، وأنها لا تعمل (نفس رسالة الخطأ). - user14068
حاولت مرنة Renamer 8.4 الذي يبدو أن تفعل الخدعة. مصدره من نفس الموقع الذي ذكرته. - JohnnyBizzle