« シフト君 | | IEレコーダー »

2013年06月19日

ファイル名一括変更

ファイル名一括変更  フリーソフト Windows2000 Windows2000 Windows2000 Vista   Ver3.30 2013/06/19 ダウンロード

【概要】 ファイル名の連番化・置換・作成/更新日をそれぞれ一括変更 

ファイルに連番を付加 連番付加、連番付加位置指定、ファイル名の統一
ファイル名置換 正規表現を使用して複雑な置換可
ファイル名の部分置換/挿入/削除
大小文字/全半角文字置換
拡張子置換/付加/削除、サブマッチ番号による順序置換
関数を利用した置換(連番加減算/文字列加工)
既存ファイルリストの直接入力
作成日変更/更新日変更 日付を一括変更、分指定の連番化
MP3 IDタグ情報編集 タイトル、アーティスト名などの一括変更
MP3タグ情報を元にファイル名生成

特徴

・インストール不要

 ・「試行」と「元に戻す」機能

  ファイルを書き換える前に「試行」を行うので、「試行」の結果を見て実行するかを判断可。
  「元に戻す」機能により、「実行」前であれば、読み込んだ時の状態に戻すことが可能。


 ・強力な置換機能

  ・正規表現の使用により、複雑な条件でファイル名を変更可

  ・スカラー変数($1~$n)を使用した順序置換

  ・同、特定位置への挿入、消去

  ・既存のファイルリストからファイル名置換

  ・format関数による書式置換


 ・状態の保存
  フォームのサイズ、リストの各見出し幅などをファイルに保存。
  前回の終了時の状態を復元できる。

 ・その他
  コマンドラインパラメータによる自動実行/置換
  リスト項目の移動、フォームの最前面化、半透明化(NT以上)


【動作条件】
  Windows98se,2000,WindowsXP,Vista

 ファイル名一括変更の詳細

コメント

>TGR様

■連番作成について

元のファイル名
001_xxx
002_y_yy
003_zzz
003a_xxyy
003b_yyzz
004_abcd
005_efgh

変更したいファイル名
001_xxx
002_y_yy
003_zzz
004_xxyy
005_yyzz
006_abcd
007_efgh

上記の場合、以下のようにすると、1度の操作で変更できます。

検索文字列

 ^(.+?)(_.+)

 意味:先頭から"_"の直前までの最短マッチ文字列を探します。
    「()」で括ると、マッチした文字列は変数「$1」に格納されます。
    2番目の「()」内の文字列は「$2」に格納。

    「^」:行頭、「.+」:1文字以上の任意の文字列 「?」:最短マッチ


置換文字列

 format(row(),"000")$2

 意味:「$1」は無視-捨てる
   行番号を0詰3桁の数値にし、「$2」内の文字列を組み合わせると、
   求めるファイル名が完成します。


■複数移動について

処理が少し面倒ですが、対応する方向で検討してみます。
(飛び飛びで選択された場合など、いろいろ要検討項目が有りそうなので・・・)


今後も、よろしくお願いします。

投稿者 エムティ・ソフト : 2013年10月27日 15:10

お世話になります。
Downloadして使わせて頂いております。どうもありがとうございます。
以下は単純なコメントです。

File名を付ける前の作業で、順番を変える際に、複数のFileを一度に動かせたり、それを一行ずつではなく一気にマウスで移動できるといいのですが、残念ながらできないようですので、別のアプリで並べ替えてそれから「ファイル名一括変更」で連番をFile名の頭に付ける作業をしています。

それと、以下のようなFileの並びで、「_」の前を三ケタ連番で付け直そうとした場合、ファイル名置換で検索をするのに、「_」の前までを桁数に関係なくすべて削除するといった処理が出来ればよいのですが、どうやってもできなかったので、「^[0-9]+」を実施してそのまま続けて「^[a-z]+」を実施すれば一旦「_」の前までがすべて無くなり、そこから連番作成をすればよいことが分かりました。この、二度継続して処理することで、二段階の検索が実現できることに気が付くまで半日かかりました…。

001_xxxx
002_yyyy
003_zzzz
003a_xxyy
003b_yyzz
004_abcd
005_efgh

投稿者 TGR : 2013年10月27日 13:46

>haneko様

現状、コマンドファイルでの記述は1行のみ可能ですので、下記のように、複数のコマンドファイルを実行することで代替して下さい。

3.30版以降

-a -com_file "aが付くファイルの置換.dat" -com_file "bが付くファイルの置換.dat"

投稿者 エムティ・ソフト : 2013年06月19日 07:08

大変便利で使いやすいプログラムのご提供、ありがとうございます。
ひとつのコマンドファイルに複数の変換規則を記述することはできますか?
たとえば
 ・ファイル名の先頭にaが付く場合、ファイル名を○○に置換
 ・ファイル名の先頭にbが付く場合、ファイル名を××に変更
という操作をひとつのコマンドファイルにまとめたいと考えています。
初歩的な質問でしたら申し訳ありません。よろしくお願いいたします。

投稿者 haneko : 2013年06月17日 13:45

>えぽ 様

ご要望ありがとうございます。

検索・置換履歴を昇順で並べ替えられるようにしました。
お試し下さい。

 メニュー→オプション→検索/置換履歴を昇順で表示

今後も、よろしくお願いします。

投稿者 エムティ・ソフト : 2013年06月17日 08:51

置換文字列で一度入力したものが記憶されるのが大変有り難いです。
そこで入力順の表示だけではなく、五十音順やアルファベット順にすることはできないでしょうか。
多種多様な言葉を入力するときに探すのが省けて非常に効率が良くなります。
ご検討よろしくお願いします。

投稿者 えぽ : 2013年06月12日 23:51

申し訳ありません。
UNICODEへの対応は、当分、未定です。

投稿者 エムティ・ソフト : 2013年03月23日 06:49

「ファイル名一括変更」ですが、
名前によって読み込めません。
修正してもらえないでしょうか?

例:
YYeTs人人影视_df1bd9aa65f4_xuite.net

お忙しいところ申し訳ございませんが
できたらよろしくお願いします。

投稿者 thanks : 2013年03月20日 12:28

MTソフト様

はじめまして。
大変素晴らしいソフトを提供いただき
ありがとうございます。


Unicodeの対応について、
ちょっとお聞かせて下さい。

ファイル名やパスの中によく
中国語とか韓国語の文字が入っていますので、
全部文字化けになりました。

今後バージョンアップする時
Unicodeを対応していただくと嬉しいと思います。

以上。

投稿者 Desmond : 2013年03月09日 15:09

大文字⇔小文字変換について、
早速の反映有難うございました.
今後も引き続き使用させてください.

投稿者 Anonymous : 2013年01月28日 13:22

大文字⇔小文字変換について

不備がありました。3.10版として修正/アップしました。

ご指摘ありがとうございます。

今後も、よろしくお願いいたします。

投稿者 エムティ・ソフト : 2013年01月24日 12:06

Windows7で使用しています.
ファイル名置換、にて、拡張子のみ、大文字から小文字に変換を試みました.

「試行」にて、ソフト画面上(変更後のファイル名)では、小文字変換されますが、
「実行」しても、変換されません.

他にも下記の場合は、結果が反映されないようです.

ファイル名:06_R5C5_3_F29_11.S2P  
→ 06_R5C5_3_F29_11.s2p にしたいのですが...
----------------------------------
検索文字列:(.+)\.S2P$
置換文字列:$1.StrConv(s2p,2)

----------------------------------
検索文字列:(.+?)(\.[^\.]+?)$
置換文字列:$1StrConv($2,2)


ファイル名全体を小文字変換の場合も、結果が反映されないようです.
----------------------------------
検索文字列:(.+)
置換文字列:StrConv($1,2)

御確認をお願いします.

投稿者 ken : 2013年01月24日 06:36

大文字を小文字に変換するのですが、一括変換画面では正しく変更されているのですが、
実行して、フォルダーを開くで表示されるファイル名が小文字になりません。

WindowsXP SP3です。
何か設定がいるのでしょうか?

よろしくお願いします。
馬場

投稿者 baba : 2013年01月23日 12:24

>hiratake様

ありがとうございます。
引き続き、再現を試みてみます。

投稿者 エムティ・ソフト : 2012年08月01日 08:42

エムティ・ソフト様

返信頂きまして、ありがとうございます。

エラーが起きる場合の操作ですが、正規表現、直接入力の両方で発生します。

よろしくお願いします。

投稿者 hiratake : 2012年07月31日 16:24

>hiratake様

ご指摘ありがとうございます。
いろいろなファイルや操作を試しているのですが、なかなか再現に至りません。
エラーが起きる場合の操作(正規表現Or直接入力など)を教えて頂けると助かります。
よろしくお願いします。

投稿者 エムティ・ソフト : 2012年07月31日 07:51

ファイル名一括変更について

便利なツールの提供ありがとうございます。
ありがたく使わせていただいていますが一部原因不明なところがあります。

MP3タグ編集にて、試行→実行の際に
「実行時エラー'9' : インデックスが有効範囲にありません」と表示されることがあります。

原因と対策がわかりますと、助かります。

よろしくお願いします。

投稿者 hiratake : 2012年07月30日 08:05

>FA様

ID3タグにはファイル末尾に付くv1.xとファイル先頭に付くv2.3系があります。
新しいファイルでは両方が付いていますが、古いファイルではv1.xだけしか付いていない場合があります。
対象のMP3ファイルのID3バージョンは、たぶんV1.xのみではないかと思われます。
「ファイル名一括変更」にMP3ファイルをドロップ後、リストの一番右端(隠れていますのでスクロール)が v1.x、もしくは空白になっていないでしょうか?

v1.xのジャンルは0~255の数値で表されます。
文字データは入力できません。

v2.3では可変長の文字データなので、任意のジャンル名が可能です。

ID3タグ仕様参照

「ファイル名一括変更」では既存のタグを書き換えるだけで、新たにv2.3を追加することはしません。
(ファイル破損の可能性が怖くて機能を搭載していません!)

一方、エクスプローラーではv2.3が無い場合に、ファイル先頭に新たにv2.3仕様のタグを追加します。
エクスプローラーで対象のファイルのジャンルを変更してみてください。
ファイルサイズが4Kバイト増加するはずです。
なお、ID3タグを一括してv2.3にするのはエクスプローラーで簡単にできます。
ファイルを全て選択して、プロパティ→概要→詳細設定 から「ジャンル」に適当な文字(空白でも可)を入れて「OK」を押すとv2.3タグが追加されます。
その後であれば、「ファイル名一括変更」で変更可能です。

なお、「ファイル名一括変更」でv1.xのみの場合、規定外(0~255以外の数値、文字)が入力された時に「0」をセットしています。「0」は「Blues」
この処理は良くないですね。「何もしない」もしくは、エラーメッセージを出すべきですね。
次の版にて修正します。

今後も、よろしくお願いします。

投稿者 エムティ・ソフト : 2012年02月15日 08:25

MP3タグ編集でジャンルに何を入れても「Blues」になってしまうのは何故でしょうか。
解決方法があれば教えてください。

インストール不要なのが好みです。改良期待します。

投稿者 FA : 2012年02月15日 01:49

>さなも様

ありがとうございます。

■Windows7について
 「VB6ランタイムライブラリ」をインストールして頂ければ動作します。
 右記よりダウンロード可 - ベクターVB6ランタイムライブラリ   

投稿者 エムティ・ソフト : 2012年01月08日 11:10

使い勝手がよく、インターフェースがシンプルなので、やりたいことがすぐにできます。
Win7や、次期のOS Win8にも対応していただきたいです!
がんばってください。

投稿者 さなも : 2012年01月07日 14:22

>匿名希望 様

ご指摘ありがとうございます。

1. -folder により指定したフォルダのサブフォルダも含め、再帰的にファイルを変更対象としてしまう。

 → コマンドラインのことを忘れていました。

   既定では指定したフォルダ以下、全てのフォルダ内のファイルを検索するようにしています。
   1階層のみ指定したい場合もあるようなので、コマンドラインパラメータを追加しました。

   -only_top このパラメータがある場合はフォルダの再帰検索は行いません。

   なお、置換対象ファイルがない場合は「置換できるファイルはありません」
   のメッセージが表示されますが、

   -no_confirm を付けることで表示しないようにしました。


2. 実行時、エラーが発生する。 「380 プロパティの値が不正です。」

 → 明白な間違いがありました。


1,2について2.90版として改修/追加しましたので、お試しください。

今後も、よろしくお願いします。

投稿者 エムティ・ソフト : 2011年12月28日 07:55

いつも、ありがたく使わせていただいております。

コマンドプロンプトよりオプションを付けて使用しております。
   -auto -quit -folder "対象パス" -search "^hoge" -pattern ""

今までは、問題なく機能していたのですが
バージョンを2.50から2.82へ移行すると以下の不具合が発生するようになりました。

1. -folderにより指定したフォルダのサブフォルダも含め、再帰的にファイルを変更対象としてしまう。
2. 実行時、エラーが発生する。 「380 プロパティの値が不正です。」

ご報告まで

投稿者 匿名希望 : 2011年12月26日 20:17

>kuroneko様

ご指摘有難うございます。
確かにVista(sp1)にて「ファイル名一括変更」を起動してみると、ご指摘のエラーが発生しました。
ただし、Windows Update にて更新プログラムをインストールしていくと、更新の途中から正常に起動できるようになりますので、Vistaの初期不良と考えられます。
エラーが英語で表示されるところが既にVistaの怪しさを示しています。
お手数ですが、Windows Update を試してみて下さい。
それでも正常に起動できない場合は、VB6ランタイム をインストールしてみてください。

投稿者 エムティ・ソフト : 2011年11月02日 08:15

はじめまして。Vistaを使用しています。
「ファイル名一括変更」をダウンロードして解凍して、いざ「ファイル名一括変更.exe」を
ダブルクリックすると↓の様なエラーメッセージが出ます。

Component'mscomctl.ocx' or one of its dependencies not
correctly registered: a file is missing or invalid

私のPCでは起動出来ないのでしょうか?
それとも他にダウンロードしなくてはならないファイル等があるのでしょうか?

ご教授よろしくお願いします。

投稿者 kuroneko : 2011年10月30日 23:13

>obules 様

ご指摘有難うございます。
「'」シングルクォートの扱いに不備がありました。
2.61版として修正しましたので、お試し下さい。

投稿者 エムティ・ソフト : 2011年10月16日 06:26

検索でも正規表現でも「'」がマッチしない…

B'z/曲名….mp3

って大量のファイルで

「B'z/」だけ消したいんだけど出来ませんでした… 残念。

投稿者 obules : 2011年10月15日 23:40

>akr 様

■同じファイル名が既に存在するなどで途中でエラーになった場合の件

ご指摘有難うございます。
確かに、試行にて既存ファイル名との重複チェックが抜けていました。
チェックを強化します。
今後もよろしくお願いします。

投稿者 エムティ・ソフト : 2011年09月05日 09:31

ファイル名一括変更について

便利なツールの提供ありがとうございます。
ありがたく使わせていただいていますが一部使いにくいところがあります。

機会があれば改善していただけると嬉しく思います。

同じファイル名が既に存在するなどで途中でエラーになった場合
変更前のファイルのファイル名に"tempxxxx"などがついてしまいます。
試行でも同じファイル名になるかどうか確認できないので大変不便です

エラーになる場合はそのファイルのみファイル名変更しないなどが
できると(さらにいうと処理の仕方を選択できると)嬉しいです。

よろしくお願いします。

投稿者 akr : 2011年09月04日 10:18

>けんいち様

申し訳ありません。
サブマッチ番号を使用した後方参照は、現在のところ使用できません。
が、もう少し強力な正規表現コンポーネント(jscript,javascriptなど)を組み込み、後方参照による順序置換も可能になるようにしてみます。

-- 2010/04/01 追記
1.50版にて、サブマッチ番号を用いた順序置換も可能としました。

投稿者 エムティ・ソフト : 2010年03月29日 07:23

ファイルネームの一部を入れ替えるような

s/.*\[.*\].*\..*/$3\[$2\]$1\.$4/

置換はできないでしょうか?

投稿者 けんいち : 2010年03月29日 01:04

コメントしてください




保存しますか?

投稿者 mt-soft : 08:00


書式を変更するような一部のHTMLタグを使うことができます。
  円記号 ¥ は ¥
  リンクは    <A href="http://xxx">表示文字</A>
 のように記述できます。