ロングファイル名を8.3形式のショートファイル名にコンバートするツール

このQ&Aのポイント
  • 大量のMIDIファイルを8.3形式のファイル名にコンバートするツールを紹介します。
  • Windows2000(SP4)またはDebian Linuxで使用可能な、ロングファイル名を8.3形式に変換するツールを紹介します。
  • ロングファイル名を8.3形式に変換するための無料のツールをお探しの方へ。以下では、大量のMIDIファイルを8.3形式のファイル名に変換するためのツールを紹介します。
回答を見る
  • ベストアンサー

ロングファイル名を 8.3形式のショートファイル名にコンバートするツー

ロングファイル名を 8.3形式のショートファイル名にコンバートするツール(OS:Windows2000 Sp4 or Debian Linux) 済みません。あるディレクトリ配下にある大量のMIDIファイル(拡張子 .mid) を 8.3 形式のいわゆる、MS-DOS 用のファイル名(8.3 形式)にコンバートしたいのですが、そういった、ツール(ソフト、できれば、シェア・ウェアではなく、フリー・ウェアで)のホームページがあるのであれば、紹介して頂きたいのですが、可能でしょうか? OSは、Windows2000(SP4) or Debian Linux で対応できるツール(ソフト)が、いいと、思っています。宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • deadline
  • ベストアンサー率63% (1239/1943)
回答No.2

8.3形式の通し番号のついたファイル名に変更したいということですね。ご質問に、 >ロングファイル名を 8.3形式のショートファイル名にコンバートする とあったので、元のファイル名の8.3形式に変更するのかと思って回答してしまいました。m(__)m 通し番号をつけるフリーソフトなら、探せばあると思いますが、折角ですので、一応、バッチファイルを使用する方法を書いておきます。その前に、お礼欄のご質問の回答から。 >1 これは、Windows2000の「ファイル名を指定して実行」から選択するのでしょうか? それでも構いませんが、通常、".bat"及び".cmd"ファイルは、ファイルをダブルクリックするだけで実行できます。(ただし、下記のバッチファイルは、遅延環境変数の展開という機能をオンにした『コマンドプロンプト』上での実行が必要になるので、この方法ではエラーになります。) >2 このファイルの置き場所はどこに置けばよろしいのでしょうか? どこでも構いません。".mid"ファイルと同じフォルダにおいても差し支えありません。 >3 FileRename.cmd のパーミッションとか、どうなるのでしょうか? Windows 2000での『アクセス権』のことでしたら、 "FileRename.cmd"ファイル自体は、ファイルを保存したフォルダのアクセス権に依存します。(保存したフォルダのアクセス権を引き継ぎます。) "FileRename.cmd"の実行に当たっては、実行するユーザーが、コピー元の".mid"ファイルを読み出し、コピー先フォルダに書き込む権限が必要です。 >4 「c:\Documents and Settings\umiboz\My Documents\download\midi3a」の配下の全てのmidiファイルを、「c:\Documents and Settings\umiboz\My Documents\midi」のディレクトリ配下に、例えば、「mid_0001.mid , mid_0002.mid , mid_0003.mid,.......」としたいのですが、全ファイル数は1000は越えています。 ちょっと、複雑になるので、そのまま、エディタにコピー&ペーストして保存後、実行できるように書き替えました。実行の際には、 1.[スタート]⇒[ファイル名を指定して実行]の入力欄に、 cmd /v:on と入力して、『コマンドプロンプト』を起動します。 (バッチファイル内で、遅延環境変数の展開機能を使用しているので、遅延環境変数の展開を有効にする"/v:on"オプションを必ず指定して起動してください。) 2.保存した"FileRename.cmd"ファイルを『コマンドプロンプト』のウィンドウにドラッグ&ドロップします。 3.『コマンドプロンプト』のプロンプトの右側に、 保存したフォルダのフルパス名\FileRename.cmd と表示されているのを確認して、[Enter]キーを押してください。(実行が開始されます。コマンドの表示を抑制していますので、「コピー元 ⇒ コピー先」の形式でファイル名だけを表示し、その下にコピーコマンドの実行結果が表示されるようになっています。) @echo off set SRC=C:\Documents and Settings\umiboz\My Documents\download\midi3a set DST=C:\Documents and Settings\umiboz\My Documents\midi set FNum=0 pushd "%SRC%" if not exist "%DST%" mkdir "%DST%" for %%i in (*.mid) do ( rem for /f "delims=" %%i in ('dir /b /o:n *.mid') do ( set /a FNum=!FNum!+1 set FNStr=00000000!FNum! set FNStr=!FNStr:~-4! echo %%i ⇒ mid_!FNStr!.mid copy /v "%%i" "%DST%\mid_!FNStr!.mid" ) popd 1行目:コマンド表示を抑制します 2行目:環境変数 SRC にコピー元フォルダ名をセットします 3行目:環境変数 DST にコピー先フォルダ名をセットします 4行目:環境変数 FNum にファイルの通し番号の初期値-1をセットします。 5行目:コピー元のフォルダへ移動します。 6行目:コピー先のフォルダが存在しない場合に、コピー先のフォルダを作成します。 7行目:変数 %%i にコピー元の拡張子".mid"のファイル名が順番に一つずつ入って、8行目~12行目が繰り返し実行されます。 8行目~10行目:通し番号を1つずつ増やすための処理です。11~12行目の !FNStr! の部分が0001から始まる4桁の通し番号になります。他の桁数に変更したい時には、10行目の 4 の所を書き替えてください。 11行目:コピー元ファイル名 ⇒ コピー先ファイル名 の形式でファイル名を表示します。 12行目:コピー元ファイルを、コピー先フォルダにファイル名を変えてコピーします。 13行目:7行目の"for"コマンドの終了位置を示しています。 14行目:元のフォルダに戻ります。 おまけ: 7行目の"for %%i in (*.mid) do ("を一部書き替えると、アルファベット順(正しくは文字コード順)、サイズ順、日付順に通し番号をつけることも出来ます。 アルファベット順(A~から): for /f "delims=" %%i in ('dir /b /o:n *.mid') do ( アルファベット逆順(Z~から): for /f "delims=" %%i in ('dir /b /o:-n *.mid') do ( サイズ順(小さい方から): for /f "delims=" %%i in ('dir /b /o:s *.mid') do ( サイズ順(大きい方から): for /f "delims=" %%i in ('dir /b /o:-s *.mid') do ( 日付順(古い方から): for /f "delims=" %%i in ('dir /b /o:d *.mid') do ( 日付順(新しい方から): for /f "delims=" %%i in ('dir /b /o:-d *.mid') do (

ugg06006
質問者

お礼

おはようございます。わざわざ、修正プログラムまで作成していただき、光栄の限りです。 やさしい方なんですね。そして、卓越したプログラミングに対する能力もお持ちの方だと、お見受けしました。 本当にありがとうございました。 なんてお礼を述べさせてよいのか、言葉がみつかりません。 機会がございましたら、また、是非、ご指南、頂ければ、と思います。

その他の回答 (1)

  • deadline
  • ベストアンサー率63% (1239/1943)
回答No.1

Windows 2000の『コマンドプロンプト』上で、『名前を変えて、別フォルダへコピー』するバッチファイルで代用処理するというのでは如何でしょうか?(『コマンドプロンプト』の"rename"コマンドでは、ロングファイルネーム⇒8.3形式のリネームが出来ないので) rem @echo off pushd "C:\WINNT\Temp" mkdir Dest for %%i in (*.mid) do copy /v "%%i" Dest\%%~nxsi popd 上記の5行を、"FileRename.cmd"等任意の名前で保存して実行します。 (↑2行目のpushd "C:\WINNT\Temp"の"~"の部分を実際にファイルが置かれているフォルダのフルパス名に書き替えてください。) 各行のコマンドの意味は説明しなくてもわかると思いますが、一応解説です。 1行目の"rem "を削除すると、コマンド行の表示等の一部を抑制できます。 2行目:ファイルのあるフォルダへ移動する。 3行目:ファイルのあるフォルダ直下に"Dest"フォルダを作成する。 4行名:変数"%%i"にそのフォルダ下の拡張子".mid"のファイルのファイル名が一つずつ入って、do以降のコピーコマンドが実行される。コピー元の"%%i"の部分はロングファイル名、コピー先は"Dest"フォルダ下の8.3形式ファイル名("%%~nxsi"は、変数"%%i"を8.3形式のファイル名に展開する時の書式。"for"コマンドのヘルプで確認できます。) 5行名:実行開始時のフォルダに戻る。

ugg06006
質問者

お礼

deadline さん、こんばんは。わざわざ、プログラムまで書いて頂き、光栄の限りです。僕はプログラムの知識は全くありません。 > 上記の5行を、"FileRename.cmd"等任意の名前で保存して実行します。 1 これは、Windows2000の「ファイル名を指定して実行」から選択するのでしょうか? 2 このファイルの置き場所はどこに置けばよろしいのでしょうか? 3 FileRename.cmd のパーミッションとか、どうなるのでしょうか? 4 「c:\Documents and Settings\umiboz\My Documents\download\midi3a」の配下の全てのmidiファイルを、「c:\Documents and Settings\umiboz\My Documents\midi」のディレクトリ配下に、例えば、「mid_0001.mid , mid_0002.mid , mid_0003.mid,.......」としたいのですが、全ファイル数は1000は越えています。 繰り返すようですが、僕には「プログラム」に対する知識は皆無ですので、可能であるならば、プログラムを変更なさって、ご鞭撻願えると、有難いです。 宜しくお願いします。

関連するQ&A

  • どのファイル形式にコンバートすればいいのでしょうか?

    デジタルカメラで録画したものをWindowsムービーメーカーで編集してDVDに書き込みたいのでが、今のファイル形式wmvではなくて別のファイル名にコンバートしなくてはいけないというところまでわかりました。 どのファイル形式にコンバートするべきですか? どうすればいいかわからなくて困っています、教えてください。 ちなみに私が使っているDVD書き込みソフトにはコンバーターはついていませんでした。

  • テキストファイルをIBM形式へコンバート

    テキストファイルをIBM形式でFDに格納したいのですが、コンバートするためのフリーソフトはありませんでしょうか?

  • LaTexで.texファイルからどのようにコンバートして見れるようになるのでしょうか?

    LaTexで.texファイルからどのようにコンバートして見れるようになるのでしょうか? できれば、.texファイルをDrag&Drop方法がよいです。 必要なツール等知りたいです。 Windows,Linux共に使います。

  • 8.3形式ファイル名の自動生成を無効にする

    8.3形式ファイル名の自動生成を無効にする SSDの書込みを低減させ、寿命を少しでも延ばすために、ネット上では様々な 方策が書かれています。その中で、8.3形式ファイル名の自動生成を無効にする 1.HKEY_LOCAL_MACHINE\SYSTEM\CurrnetControlSet\Control\FileStstem 「NtfsDisable8dot3NameCreation」をダブルクリック 2.「値のデータ」を「1」に変更し[OK] というものがありましたが、MS-DOS時代で設計されたファイル名の付け方のよう ですが、いまのWindows7でもMS-DOSと互換性をもたせるために、8.3形式のファイル名 を自動的に作成しているようですが、これをOFFにすれば、SSDに書込みが減少し少しは 延命に繋がるのではないかということですが、Seagateの内臓HDDをローレベルフォーマット したり、ドライブ診断をするのに、SeatoolというMS-DOS版のアプリケーションがあります。 これをUSBメモリやCD-Rに書き込んで、光学ドライブからブートすることで、Seagate製の HDDにさまざまな検査やフォーマットをすることができるようですが、このソフトを使う 時にこの 8.3形式ファイル名の自動生成を無効にすることで、このようなMS-DOSで稼動する ツールが使えなくなるようなことはありますか?かなり高度なことなのでわかりにくいとは 思いますが、どなたか分かる方、教えてください。 MS-DOSをまったく利用しないのであれば、この設定を無効にして少しでもSSDの書込みを減ら したり、これをすることで、PCパフォーマンスも少しは向上するそうですが。

  • WMA形式のファイルを、MP3かWAVにコンバートできるソフト

    上記のように、WMA形式の音楽ファイルを、MP3かWAV形式にコンバートできるフリーウェアソフトを探しております。  初心者なので、簡単に使用できるものがうれしいです (DLLを別途にDLしなくてもよいソフトを……) どうぞよろしくおねがいします

  • MS-DOS形式のファイルをWindowsで。

    毎度ご迷惑おかけしております・・・(2回目です) ネット上からMS-DOSで動作するフリーソフトをダウンロードしたのですが、 そのフロッピをそのままPC(MS-DOS3.30?古いです)に差し込んで探しても、ファイルが見つかりませんでした。 考えてみれば、WindowsとMS-DOSではフォーマット形式が違うので、 Windows上で落としたファイルの内容は、MS-DOSでは見れないのですね。 PCのハードの中に入っているファイルを(→フロッピに保存して)、Windowsで展開したり、その逆で、Windowsで保存したファイルをMS-DOSで開いたり・・・ということは出来るのでしょうか? (ところで、調べるうちに「Windows上のMS-DOS」という言葉を耳にしたのですが、  「OSの上にOS?」ということに・・・?  ファイル形式とかはどうなっているのでしょう?)

  • ファイルのコンバート時間について

    このたび3年ぶりに携帯を機種変しました。 機種はDocomoのP903-iTVですが、ミュージックプレーヤが使えるということでケーブルやらSDなどを準備し、専用のソフトが必要とのことで、添付されてきたCDよりソフトをPCにインストールして説明書通りやってみたのですが、MP3ファイルをAAC形式にコンバートするのに時間がかなりかかります。 なにぶん初心者なので、マニュアルどおりしかできません。 この間は、約40曲を入れようとしたのですが、3時間くらいかかってやっとコンバートが終わり、その後30分かかりSDへ転送完了しました。 何か時間短縮する方法ありましたら教えてくださいお願いします。

  • ファイル名が長すぎてWindows2000上で削除出来ない?

    よろしくお願い致します。 あるpdfファイルがWindows2000上で削除できません。恐らくファイル名が長すぎて(50文字程度。どのように保存したのか解りません。。)、Windows2000上で削除できないのではないかと思います。 MS-DOSから削除する(MS-DOSプロンプトでは同じことでしょうか?Windowsを立ち上げず、MS-DOSで起動すれば大丈夫?)のが良いのでしょうか? どなたかご存知の方は教えて頂けないでしょうか? よろしくお願い致します。

  • mp3ファイルの形式の変更

    mp3ファイルの形式を320Kb/sから192Kb/sにしたり48000Hzを44100Hzに変更できるツールはないでしょうか? いろいろ探したのですがタイトルやアーティストやアルバム名を変更できても、形式を変更するソフトが見つかりません。もしあれば教えて欲しいです。お願いします。

  • ファイル名に目印をつけられるソフトを探しています。

    例えばファイルを一覧表示したときに特定のファイルが一目で分かるような、ファイル名に目印をつけられるソフトを探しています。 目印の形式は特にこだわっていません。ファイル名を色付きで表示したりまたは付箋やその他の方法でも結構ですが、できれば複数種類の目印がつけられるものを希望しています(たとえば5色に色分けできる等)。 目印をつけたいファイルはjpgやbmpほか画像ファイルです。 OSはWindows2000です。よろしくお願いします。