• ベストアンサー

バッチファイルでのリネームについて

当方WinXPです。 いろいろ調べたのですが、自分のやりたい形での紹介は見つけられなかったので質問させてください。 aaa001.txt aaa002.txt aaa003.txt、のように連番になっているファイルを、 abc001.txt abc002.txt abc003.txt、のように別の連番にリネームするバッチを作りたいんですが、やり方がわかりません。 その場限りではなくて、何回も使いまわせるようにしたいです。 ちなみにやりたい作業内容としては 1:連番のファイルの名前を別の連番にリネーム。 ↓ 2:リネームしたファイルを結合。 ↓ 3:元のファイルを消去。 という感じで、2~3は自力で出来そうなのですが、1の作業ができないので困っています。 分かりにくい質問で申し訳ないですが、是非教えてくださると嬉しいです。 よろしくお願いします。

  • udfjx
  • お礼率66% (2/3)

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

  • ベストアンサー
  • rivoisu
  • ベストアンサー率36% (97/264)
回答No.2

WindowsならバッチファイルよりVBScript の方がいいと思います。 バッチファイルを書ける方なら理解が早いと思います。 http://www.roy.hi-ho.ne.jp/mutaguchi/wsh/wshtop.htm ここらあたりを参考に作ってみてはいかがです。

udfjx
質問者

お礼

ご回答ありがとうございます。 うーん、バッチは先日から勉強し始めたばかりなので、書ける、というレベルではないのです。 まあ覚えて損はないでしょうし、こちらでも調べてみます。 ありがとうございます。

その他の回答 (2)

  • rivoisu
  • ベストアンサー率36% (97/264)
回答No.3

今度の連休、暇だったらコードを造ってあげてもいいのですが、 自分でも勉強してみてくださいね。 ところで「結合」とありますが、テキストファイルですか? 新しいファイルの名称はどう決める? 元のファイルの消去は別のバッチ(スクリプト)にしたほうが安全じゃないですか?

udfjx
質問者

補足

もちろん今後自分で使いこなせるようにはなりたいと思っています。 結合したいのは動画ですが、wmv、avi、mp4、など形式が多いので、最終的にその形式ごとに1個ずつバッチを作るようにすればいいかなと思います。 新しいファイル名は分類分けする前の仮の名前なので、なんでもいいです。 元ファイルの消去はたしかに失敗したら怖いですね・・・失念していました。 まあファイルの消去も最終的(確実に結合できるのを確認したら)に付ける、という形にしたいと思います。 自分でも挑戦してみますが、正しい、というかもっと使いこなせてる方のも見てみたいので、お暇だったら是非よろしくお願いします。

  • OMEGAT
  • ベストアンサー率70% (455/642)
回答No.1

ren aaa*.txt abc*.txt ではだめでしょうか。 ドライブ指定などは ren c:\folder\aaa*.txt abc*.txt の様に行います。

udfjx
質問者

お礼

ご回答ありがとうございます。 すいません、やはり質問が意味不明すぎましたね・・・ 特定のファイルだけではなくて、001~010などのように連番になっているファイルをリネームするようにしたいんです。 あえて詳しく書きませんが、分割されたファイルの結合用バッチを毎回作るのがめんどうだったので、使い回しができるバッチを作れないかと思ったわけです。 まあ自分でももっと調べてみようと思います。 ありがとうございます。

関連するQ&A

  • バッチファイルでファイル名をリネームのコマンド

    お世話になります。 バッチファイルのコマンドについて質問させていただきます。 【やりたいこと】 AAA.batというバッチファイルと”MU_日付.txt”というテキストがあります。 このテキストの日付部分は毎回変わります。例)MU_111226.txt このバッチファイルとMU_日付.txtは同じ階層にあります。 まず、このAAA.batをクリックしたら、この”MU_111226.txt” を ”読み込み.txt” という名前にリネームします。このリネーム処理の時、テキスト名が”MU”で始まるファイル以外は対象にしないようにしたいのです。 次にある処理を行って、その処理が済んだら”読み込み.txt”を”END_MU_111226.txt”といった元のファイル名に”END_”を付けた形でリネームして、同じ階層にある「処理済み」フォルダへ移動させたいのです。 ”END_” + ”元のファイル名”が無理であれば、”MU_111226.txt”を「処理済み」フォルダへ移動させるだけでも構いません。 このような処理は可能でしょうか? どなたかご教授いただけますでしょうか。よろしくお願い致します。

  • バッチファイルでファイル名をリネームのコマンドにつ

    お世話になります。 バッチファイルのコマンドについて質問させていただきます。 【やりたいこと】 AAA.batというバッチファイルと”MU_日付.txt”というテキストがあります。 このテキストの日付部分は毎回変わります。例)MU_111226.txt このバッチファイルとMU_日付.txtは同じ階層にあります。 まず、このAAA.batをクリックしたら、この”MU_111226.txt” を ”読み込み.txt” という名前にリネームします。このリネーム処理の時、テキスト名が”MU”で始まるファイル以外は対象にしないようにしたいのです。 次にある処理を行って、その処理が済んだら”読み込み.txt”を”END_MU_111226.txt”といった元のファイル名に”END_”を付けた形でリネームして、同じ階層にある「処理済み」フォルダへ移動させたいのです。 ”END_” + ”元のファイル名”が無理であれば、”MU_111226.txt”を「処理済み」フォルダへ移動させるだけでも構いません。 このような処理は可能でしょうか? どなたjかご教授いただけますでしょうか。よろしくお願い致します。

  • バッチでファイルをリネームして別フォルダ移動に行き詰まり・・・

    バッチ(コマンドプロンプト)でファイルをリネームして別フォルダに移したいのですが行き詰ってしまったのでどなたかご教示ください。当方XPの環境です。 まず、今日(例:2月4日時点で)簡単に説明するとあるフォルダに3つファイルが存在します。 「test1」フォルダに「AAA200711.txt」「AAA200712.txt」「AAA200801.txt」があるとします。 数字はその月に作ったファイルと思ってください。 そのファイルを「test2」フォルダへ移したいと思っています。 移す際にファイル名をリネームしたいと思います。 2008年1月のものを「AAA1.txt」2007年12月のファイルを「AAA2.txt」といった感じでやるつもりです。 当方で考えた下記の構文でですが先月、先々月のものはうまくリネームしてコピーされました。 ですが3ヶ月前のファイルだけなぜか出来ません。 下記にあるのはそのまんまコピーしたものになります。 原因がわからず戸惑っておりますのでよろしくお願いします。 @echo off set YYYYMM=%DATE:~-10,4%%DATE:~-5,2% set /a LASTMONTH=YYYYMM-1 if %LASTMONTH:~-2%==00 set /a LASTMONTH+=12-100 copy C:\test1\AAA%LASTMONTH%.txt C:\test2\AAA1.txt @echo off set YYYYMM=%DATE:~-10,4%%DATE:~-5,2% set /a TWOMONTHAGO=YYYYMM-2 if %TWOMONTHAGO:~-2%==00 set /a TWOMONTHAGO+=12-100 copy C:\test1\AAA%TWOMONTHAGO%.txt C:\test2\AAA2.txt @echo off set YYYYMM=%DATE:~-10,4%%DATE:~-5,2% set /a THREEMONTHAGO=YYYYMM-3 if %THREEMONTHAGO:~-2%==00 set /a THREEMONTHAGO+=12-100 copy C:\test1\AAA%THREEMONTHAGO%.txt C:\test2\AAA3.txt ↑これがうまくいかないのです。 日付の計算とかが間違っているのでしょうか? cd /d C:\test2 del AAA*.txt

  • DOSで多数のファイルをリネームしたい

    「ABC00000.txt」から「ABC00999.txt」という千のファイルがあるのですが、これらの名前をすべて「ABC000.txt」から「ABC999.txt」という風に、中のゼロを二つ消した形にリネームしたいと思っています。 これを実現する為のコマンド、もしくはバッチ処理の方法を教えてください。

  • バッチファイルについて

    バッチファイルから.txtを読み込んで.txtを何行目からスタートさせる事はできるのでしょうか?? 作業としては aaa.txtの三行目を読み込んで test.txtを処理して aaa.txtの終点にくれば作業終了 と言う感じなのですが。 どなたか詳しい方教えてください。 宜しくお願いします。

  • バッチファイルでファイル名を連番にしたい

    たとえばフォルダの中にfirst.txt second.txt third.txtがあって、 これを11.txt 12.txt 13.txtの順の連番でバッチファイルで リネームされるようにするにはどうすればよいのでしょうか? (forth.txtがあれば14.txtになります。ForとRen等使用で可能?) ご存知の方がおられましたらご回答をよろしくお願いします。

  • Subversionで、ファイルをリネームしたい

    SubVersionを使用していますが、あるディレクトリをリネームしたいのですが、可能でしょうか。 また、可能ならその方法を教えてください。 svn+ssh://xxx.jp/aaa ⇒ svn+ssh://xxx.jp/aaa_bak ※xxx.jpは自社サーバです。 ※aaaからaaa_bakにリネームしたい なお、aaaはレポジトリ?になるのでしょうか。 aaa以下のフォルダ構造はtrunk、branch、tagがあります。 SVNにアップされているaaaはディレクトリ構造が間違っているので、 とりあえず、間違っているaaaは残してaaa_bakとして(念のため)、 正しいディレクトリ構造のaaaをアップしたいのです。 (別に正しいディレクトリ構造のaaaは、  trunkとかtagとかなくてもいい) ぜひ教えてください。 やったこと: ・一般ユーザでsvn rename aaa aaa_bakすると、  svn: Can't open file '.svn/lock': 許可がありません  ⇒svnのスーパーユーザ?じゃないとダメ?

  • batでテキストファイル内の文字を使ってリネーム

    テキストファイル内の名前を使ってファイル名をリネーム+番号を付与するバッチファイルを作成したいです。 テキスト内は 1234567-0001.txt 1234567-0002.txt 1234567-0003.txt と書かれていて、 ファイルは 00000001.txt 00000002.txt 00000003.txt とあります。 これを 1234567-0001-1.txt 1234567-0002-1.txt 1234567-0003-1.txt という名前にリネームしたいです。 ファイル自体は1万ファイル以上あるのでバッチファイルで処理したいと思っています。

  • バッチファイルの正規表現を利用した文字列検索

    お世話になっております。 表題の件について、質問させてください。 『とあるファイルに記述されている文字列を一部抜き出して、 別ファイルとして保存する』というバッチファイルを作成していますが、 うまく抜き出すことができないため、ご教示いただければ幸いです。 例) ・filelist.txt .\aaa\aaa.txt .\aaa\bbb.txt 上記ファイルに対し、「.\aaa\aaa.txt」の一行のみ取り出した 「aaafile.txt」というファイルを生成したいと考えております。 現在、私が考えたコマンドは下記になります。 for /f %%A in ('findstr /r /c:"aaa[^\\].*" filelist.txt') do echo %%A > aaafile.txt このコマンドを実行すると、「.\aaa\bbb.txt」まで抽出してしまい、 意図通りとなりません。 初歩的なミスかもしれませんが、 何卒、よろしくお願いいたします。

  • バッチファイル ファイル ショートカット

    質問させて頂きます。 実際に私が行いたい作業を下記に述べます。 1・バッチファイル起動。 2・aaaディレクトリをコピー。 3・Cドライブ直下に貼り付け。 4・Cドライブ直下に貼り付けたaaaディレクトリにあるbbb.txtのショートカットアイコンをデスクトップに作成。 上記が私の行いたい作業です。「3・Cドライブ直下に貼り付け。」までは実装出来ましたが、4・ショートカットの作成方法が分かりません。 よろしくお願いします。 OSはWindows 7です。

専門家に質問してみよう