Windowsで特殊文字でファイル名を強制的に変更する方法は?

filenames rename special-characters windows

ファイル名にクエスチョンマークが入っていてWindowsが再生できない曲があるのですが、これはどうすればいいのでしょうか?

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

そこで名前を変更しようとすると、エクスプローラーで試してもコマンドプロンプトから試してもWindowsが文句を言ってきます

コピー、名前変更、移動をしようとするとエラーが出ます

ファイル名、ディレクトリ名、またはボリュームラベルの構文が正しくありません

この場合、Windowsで強制的に名前を変更する方法はありますか?

Update

私はこの質問に注目していますが、13の回答と多くの試みの後(サードパーティの解決策は別として)、Windowsはこれを行うことができないように思われます(または少なくとも私のWindowsはできません、短い名前はありません)。だから、私はLinuxを使うという私のオリジナルの解決策を受け入れています。Windowsがどうにかしてこれを処理するのを見ることができればいいのですが、私がこの答えを受け入れたからといってやめないでください

  86  community wiki  None


ベストアンサー

linuxのライブCDを持ってきて、それを使う

42  community wiki  2009-08-28


その名前の短いファイル名バージョンを使ってみましたか?例えば

ren whereh~1.ogg where.ogg

現在のフォルダ内で最初の数文字で始まる唯一のファイルであれば、名前の最初の6文字(スペースは無視して)の後にチルダ(~)、そして1を使用します

29  community wiki  2009-08-31


  1. Windows 7 で。管理者モードでcmd.exeを実行します
  2. cd をファイル名のディレクトリに入れてください
  3. run: chkdsk /V /f [私の悪いファイルはOSドライブ以外の別のドライブにあったので、それを解除することができました。OSドライブであれば、起動時にこの段階を行う必要があるかもしれません]
  4. 待つ(再起動が必要になるかもしれない)

結果はご覧の通り、chkdskが実際に私のためにファイルを削除してくれました。なので、ファイルを残したい場合はどうすればいいのかわかりませんが、これで確実にファイルが削除されます

Results/Cmd Log:

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>

24  community wiki  2011-02-02


chkdskで無効なファイル名を修正することがあります。すべてのファイル名が無効なのでファイルを削除して、失われたファイルを復元するというメッセージが表示されます。そして、C:\found.000\file0000.chkでそのファイルを見つけることができます。これは問題のあるファイルを削除するのには有効な方法ですが、ファイルを残しておきたい場合には最適な方法ではありません

12  community wiki  2011-08-09


私がこの頑固なファイルを削除する方法は、7zipを開いてファイルを見つけ、7zipを使ってファイル名を変更することでした。私のはファイルの最後にスペースを持っていた曲だった

12  community wiki  2014-01-12


UNC パスを指定してみてください (Naming Files, Paths, and Namespaces を参照してください)。これはあらゆる種類の制限を回避することができます。\\?\構文を使用します

例えば、ファイルがデスクトップにあった場合(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 では動作します

12  community wiki  2015-02-28


Recuvaを使用します。それは主に削除されたファイルを回復することを目的としていますが、それはまた、そのスキャンに削除されていないファイルを含めるためのオプションを持っています

Recuvaを起動した後、ウィザードを拒否し、右のディスクを選択します。その後、オプションに移動し、「削除されていないファイルをスキャンする」オプションを見つけてチェックし、スキャンを起動します。しばらくすると、ディスク上のすべてのファイルが表示されます(削除されたかどうかに関わらず)。無効な名前(名前はすでにビューで固定されている)でファイルを見つけ、それらを選択し、右クリックして、どこかに保存(”回復”)

enter image description here

Windows XPで)やってしまいました

8  community wiki  2017-05-20


マイクロソフトのツール DISKEDIT.EXE は、生のディスクデータを直接読み書きするための低レベルのツールです。このファイルのディレクトリエントリを含むクラスタをロードして、問題のある ‘?’ 文字を無害なものに変更してディスクに書き戻すことができるはずです

私の理解では、Microsoft の diskedit ツール (同名の Norton Utilities ツールではなく、FAT ボリューム専用のツール) は Windows 2000 SP4 で最後に見られたものだと思います。しかし、こちらにリンクがあります

適切なクラスタを見つけるには、DiskExplorer for NTFSの試用版をダウンロードすることができます

File->Drive…を選択して、この悪いファイルが入っているドライブを開きます。Goto->Root Directoryを選択してディレクトリビューを表示します。MFT#のリンクを使って、不良ファイルの入っているディレクトリに移動します。そこにたどり着くと、ウィンドウの上部に “MFT# x12345 DIR: ‘dirname’, …blah blah blah blah… starting at cluster x9302AE, …blah blah blah blah “のようなことが書かれています

ここで、Microsoft の diskedit に移動します。まず、File->Open…を実行して、ボリューム名C:を指定します(ファイルがC:ドライブにある場合)。ボリュームファイル名は空白のままにしておきます。この起動クラスタ番号をdiskeditに入力し、Read->NTFS Clusters…->Starting Cluster (16進数で入力)します

今すぐ矢印キーを使用して悪いファイル名にスクロールします。それはユニコードであるので、”W.h.e.r.e. .H.a.v.e. .A.l.l. .t.h.e. .C.o.w.b.o.y.s. .G.o.n.e.?…o.g.g.g. “のようなものを探しているでしょうカーソルを「3F」の悪い文字の上に置き、5F (‘_’)のような安全な文字を入力します。書き込み>Itを選択してディスクに書き戻します

他にもヒットするスポットがあります(どちらか一方か両方が必要かどうかはわかりません)。さて、DiskExplorerに戻って、不良ファイルのMft#をクリックします。左側に「構造」と書かれたツリーのようなものがある画面が表示されます。ツリー内の「属性」をクリックします。属性のリストが表示されますが、そのうちの一つが$30 … $FILE_NAMEのようなものになります。つまり、$30にはファイル名が入っています。Structuresツリーの$30ノードの下にあるBodyノードをクリックします。メニューから「表示->as Hex」を選択します。数行下に、ファイル名がW.h.e.r.e. .H.a.v.e…などと表示されるはずです。画面の左側には、どのディスクセクターを見ているのかを示すセクター欄があります

ディスクエディットに戻ります。Read->Sectors…を行い、DiskExplorerからセクタ番号を入力します。先ほどと同じように下にスクロールして「3F」の文字を入れ替えます。Write->Itを選択してディスクに書き込みます

これだけやったのに、ツールでは「文字を変えた」と言われてもエクスプローラーではディレクトリはどこかにキャッシュされているはず。再起動すると変更が見えるようになる

5  community wiki  2009-11-05


Ken Rename ツールなどのサードパーティ製ツールを使ってみてください

Screenshot of Ken Rename

または マスターの名前を変更

enter image description here

ファイル名変更ツールの一覧です

私自身もテストしてみたいと思いますが、私はWindows Vistaの64ビットを実行していますので、ファイルの扱いが違うかもしれません

これらのツールが失敗した場合は、Windows PowerShellを試してみるとよいでしょう。ファイル名の変更を参照してください Windows PowerShell ブログ

5  community wiki  2011-08-11


正しい名前のファイルに移動させてみましたか?

move "Where Have All the Cowboys Gone?.mp3" "Where Have All the Cowboys Gone.mp3"

4  community wiki  2009-08-28


  • 複数のファイルがある場合は、aのような簡単な名前で新しいディレクトリを作成してください
  • そのディレクトリに毎回1つのファイルを移動します
  • cmd.exeで新しいディレクトリに移動し、次のように入力してください

    ren *.ogg 1.ogg
    

    これは簡単にするためです。XPでは1.oggWhere Have All the Cowboys Gone.oggにするなど、好きなように名前を変更することができます。oggは一例であり、拡張子は何でも構いません

4  community wiki  2012-02-14


Cygwinがインストールされていれば、そのファイルの世話をすることができるはずです。先ほどもその問題がありましたが、Cygwinからbashシェルでrmを使うと、エクスプローラを含めてWindowsアプリがないときに、CMD.exeでUNC filespecを使おうとしたことも含めて、ちょうどいい感じでファイルを削除することができました

ファイルを保持したい場合に備えて、mvがそれをすると想像しています

ベアボーンのCygwinのセットアップは数分で済むし、良いツールがたくさんあるので、私はいつもそれを持ち歩いている。ライブCDを使ってLinuxを起動するよりも簡単です

4  community wiki  2012-09-21


問題のボリュームがFAT32またはNTFSであると仮定して、chkdskを実行してみてください。破損した」ディレクトリエントリがクリーンアップされるはずですが、これは (この場合は) ?ブートボリュームであれば、再起動が必要になるかもしれません

3  community wiki  2009-08-28


これはうまくいくはずです(少なくとも私の場合はそうでした)

dir /X *cowboys*

このコマンドは以下のようなものを出力します

08/11/2011  15:21    <DIR>          WH5E97~1     Where Have All the Cowboys Gone
?.ogg

そのWH5E97~1はあなたが探しているものです!(実際のところ、このようなコードは完全に発明されたものですが、あなたが見つけるものに似ているはずです)

それを知っていると、シンプルに

rename WH5E97~1 "Where Have All the Cowboys Gone.ogg"

これでいいんじゃないかな

役に立つことを願っています

3  community wiki  2011-11-14


あなたは試したことがあります

type "Where*.ogg" > "Where.ogg"

might work.

2  community wiki  2011-06-24


移動中にワイルドカードを試してみてください –

move "Where Have All the Cowboys Gone*.mp3" "Where.mp3"

ワイルドカードにマッチするファイルが1つしかない限り、それが最善の策でしょう

1  community wiki  2009-08-28


新しいフォルダにドラッグ&ドロップし、コマンドプロンプトでそのフォルダに移動してタイプします

ren *.* test.ogg

1  community wiki  2009-08-28


cygwin でファイル名を変更してみてください

コマンドは次のようになります。mv filename?.ogg filename.ogg

1  community wiki  2009-09-02


マイクロソフトの内部コマンドのほとんどは、explorer.exeの存在によって制御されています

タスクマネージャを開き、現在アクティブなプロセスのリストを調べてください。その中にexplorer.exeがあるはずです。右クリックして、explorer.exeを終了/停止/閉じる。タスクマネージャーはまだ閉じないでください。では、セカンダリのファイルマネージャを使って攻撃的なファイルに行き、ワイルドカードを使って削除や名前の変更を試してみてください。おそらく成功すると思います

ここで、タスクマネージャーウィンドウに戻り、アプリケーションと書かれた一番上の行を右クリックして、新規タスクと書かれた一番下のボタンを選択します。explorer.exeと入力します。エクスプローラーが再び表示され、攻撃的なファイルはもうありません

1  community wiki  2013-10-06


WinRARのGUIを使えば、最初にアーカイブに詰めなくてもファイル名を変更することができます。私はWindows 8.1で、非常に長いファイル名でテストしました。魅力のように動作しました

1  community wiki  2014-06-15


WinRARがあれば、WinRARでパックして、WinRARでリネームして、アンパックして

あるいは、VBScriptで試してみて、次のスクリプトを取り出して.vbsという拡張子のファイルに保存することもできます

Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")

fso.MoveFile "Where Have All the Cowboys Gone?.ogg", "Where.ogg"

1  community wiki  2015-02-27


私も同じような問題がフォルダで発生したことがあります。フォルダ名が「.min.」となっていて、通常は許可されていませんでした

リネームは許可されていません(画像をクリックしてください)

Winrarを使って、私はこれを解決することができました。私がしたことは

  • フォルダを右クリックします
  • アーカイブに追加」を選択します
  • 新しいアーカイブ名を選択します (特別な文字を含まないもの)
  • アーカイブオプションから「アーカイブ後のファイルの削除」を選択します
  • を選択してからOKを選択してください

アーカイブに追加…(クリックすると画像が表示されます)

  • その後、.rarファイルを開きました
  • と、中のファイル名を変更しました

Windows は .rar ファイルの中に何が入っているかを実際に確認しないので、これは許可されています。名前を変更したらすぐにファイルを解凍して完了です

これが役に立つといいですね

1  community wiki  2016-05-24


このディレクトリ内の cmd.exe をワイルドカードで使用します。例えば

ren "Where Have All the *.ogg" "Where Have All the Cowboys Gone.ogg"

0  community wiki  2011-07-04


7-Zipファイルマネージャ(7-zip.org)はXPではできないファイルやディレクトリのリネームをしてくれます。これを使って、.tarファイルを抽出し、同封されている不正な名前の.chmファイルの名前を変更しただけで、XPでは不可能なファイルやディレクトリの名前を変更することができます。LiveCDは必要ありません

Tschüß!

0  community wiki  2014-09-09


私は、サブフォルダを持つ2つの入れ子になったフォルダで同じような問題を抱えていました。私はいくつかのファイルの名前を変更することも削除することもできませんでした(私はいろいろな方法を試しました)。ようやく解決策を見つけました。Teracopyです

インストールするには、フォルダまたはファイルを右クリックしてteracopyを選択してください。teracopyが開きますので、deleteまたはrenameをクリックしてください。名前を変更したり削除したりします

試しにやってみるといいかもしれません

0  community wiki  2014-09-16


同じ状況にぶつかってしまいました

ググってみると、ネイティブな解決策がないことがわかりました

… そして、私はシェルとしてJPSoftのTCCを使用しています

しかし、Cedrick Collomb氏のUnlocker(http://www.emptyloop.com/unlocker/)は、handle’mにも対応していることを知りました

私の設定にもありましたまた、非常にお勧めです

まあ、少なくともこの解決策では、Windowsの環境を残す必要はありませんが

0  community wiki  2015-01-18


私は、Winampの基本的なオープンコマンドを使用して、そのプログラムのエクスプローラーウィンドウを使用して、このようなFLACファイルを修正しました。フォルダに行くと、エクスプローラーと違ってリネームオプションがありました

0  community wiki  2015-02-01


私も同じような状況に遭遇しました。掲示されている解決策のどれも私のために働いていませんでしたが、私は最終的に簡単な解決策を見つけました

  • 外部ツールは必要ありません
  • プログラミングやシェルスクリプト言語の知識は必要ありません

私は単にファイルをUSBスティックにコピーし(はい、コピーは私のためにまだ可能でした)、そこに名前を変更して、それを再び配置しました!私はそれがうまくいった理由を説明するために他の人に任せる。私はそれが働いた理由を説明するために他の人にそれを残す

0  community wiki  2015-02-26


これは直接の答えではありませんが(Windowsはどのようにファイルの名前を変更することができますように)、これは私のために動作します。違法なファイルは通常外付けドライブにあるので、外付けドライブをAndroidタブレットに接続します。これにより、Windowsで読み込めるファイルの名前を変更することができます。これは特殊文字を扱うが、私が得る通常の問題は、ファイル名がスペースで始まるか、スペースで終わるか、または’…’で終わることである

サードパーティツールのFlexRenamerを試してみましたが、これでも上記のように苦戦しています

0  community wiki  2015-08-22


ほとんどの場合、この答えは役に立たない。 疑問符のように表現された文字を持つファイル名に騙されてしまいましたが、実際はデフォルトのM$フォントでは表示できない/できない文字です

この投稿は削除した方がいいですか?それでも人によっては役に立つかもしれませんが


タブコンプリートに内蔵されているcmd.exeを使ってみてください

  1. dir /xでは役に立たない(NTFSは短いファイル名をサポートしていない状態で作成された)

    dir
    Verzeichnis von C:\Temporal\_black
    05.10.2015  21:23    <DIR>          none\none         ? ?????????, ?????????
    
    dir /X
    Verzeichnis von C:\Temporal\_black
    05.10.2015  21:23    <DIR>                       none\none         ? ?????????, ?????????
    
  2. 名前を入力/コピー&ペーストして名前を変更しようとしてもうまくいきません

    C:\Temporal\_black> ren "? ?????????, ?????????" bart
    Syntaxfehler.
    
  3. これを動作させるには、タブコンプリートを使用しなければなりません。cmd-shell で正しいディレクトリに移動して ren と入力し、タビュレータキーを押して、「正しい」名前が表示されるまでそれを打ち続けるだけです

    C:\Temporal\_black>ren "? ?????????, ?????????"
    

    その後、残りの部分を入力してエンターキーを押します

    C:\Temporal\_black>ren "? ?????????, ?????????" bart
    

    これで報われます

    C:\Temporal\_black> dir
    Verzeichnis von C:\Temporal\_black
    05.10.2015  21:23    <DIR>          none\none         bart
    

それはちょっと面倒ですが、これまでのところ、これはファイルとディレクトリ(Windows 7と8)で常に私のために機能しています

面白いことに、2.と3.のrenコマンドは同じですが、タブ補完を使わないと動作しません。また、タブ補完を使っていたとしても、renの後に名前を編集するとすぐに動作しなくなります (例: クエスチョンマークを削除したり追加したり)

0  community wiki  2015-10-16


タイトルとURLをコピーしました