
ファイル名の一部をbatで変更したい
batファイルを使って、以下のようにファイル名の一部を変更したいです。
例)
変更前
01_レポート_世界史_~.txt
変更後
01_レポート_物理_~.txt
試しに
ren 01_レポート_世界史_*.txt 01_レポート_物理_*.txt
と入れたところ、
01_レポート_物理史_~.txt
となってしまいます。
上記はあくまで例ですが、対象が多くてとても手作業では変えれません。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
BATスクリプトを書く力が無くても、エディターを使いこなせていれば、
dir /b 01_レポート_世界史_*.txt > foo.bat
で、
01_レポート_世界史_aaa.txt
・・・・(以下同様)
ファイル名の並んだファイルを作って、あとはエディターの操作でfoo.batを、
ren 01_レポート_世界史_aaa.txt 01_レポート_物理_aaa.txt
・・・・(以下同様)
という風に編集して、実行するという手もあります。エディター使いこなせていなくてもExcelが使いこなせていればなんとかなるでしょう。
バッチでやるとするとこんな感じで。
for %%A in (01_レポート_世界史_*.txt) do call :ren "%%A"
exit /b
:ren
set "A=%~1"
ren "%A%" "%A:世界史=物理%"
exit /b
回答ありがとうございます!
回答いただいたfor文から色々調べて試したら解決出来ました!
一番知りたかった情報に近かったのでベストアンサーとさせていただきます!
〈参考〉
https://qiita.com/kaorikatakura/items/69d50a920c …
No.3
- 回答日時:
変更のパターンをみると
変更前の文字+任意の文字.txt を
+任意の文字.txt を
変更後の文字+任意の文字.txt に変えるパターンです。
変更前の文字は01_レポート_世界史_
変更後の文字は01_レポート_物理_
「上記はあくまで例ですが、対象が多くてとても手作業では変えれません。」
ということですが、変更前後の文字の種類が多いだけで、
パターンは上記のパターンだけでしょうか。
それとも
任意の文字+変更前の文字.txt を
任意の文字+変更後の文字.txt に変えるパターンなどもあるのでしょうか。
もし、あるなら、全てのパターンを提示してください。
BAT等のスクリプトは、各パターンごとに、処理を記述しないと対応できません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/03 13:18
- その他(プログラミング・Web制作) フォルダ内の特定 拡張子のファイルを一括実行するBat ファイルについて 4 2022/04/17 09:51
- UNIX・Linux Linuxについて質問です。 以下のhistoryの出力結果から、sedコマンドのファイル名tmp1 1 2023/02/03 20:11
- iOS ファイルの名前変更 2 2022/08/11 20:47
- その他(パソコン・スマホ・電化製品) ウイルスバスターの制限解除方法 1 2022/08/09 22:08
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Visual Basic(VBA) ファイル名の右側を変更したい ファイル名:「1001日別売上」の左側へ「2022」を追加し、「202 6 2022/10/14 10:03
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Visual Basic(VBA) Excelのマクロについて教えてください。 作業フォルダ内に2つのファイルがあります。 このファイル 2 2023/07/09 13:40
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
.txtではなく.logの方が良いの...
-
COPYコマンドで結合すると余計...
-
VBAでワークシートを引数として...
-
多数のサブディレクトリ内のフ...
-
accessでSQL文を使ってcsvファ...
-
Windowsのバッチファイルを利用...
-
VBSでフォルダ内のテキストファ...
-
【C++】 ファイルの名前を変更...
-
エクセルの各セルの内容をそれ...
-
ファイル名の一部をbatで変更し...
-
DIR関数を使ったファイル名の取得
-
ファイルの最後に文字列挿入
-
バッチファイル 複数ファイル...
-
バッチでファイルの内容の比較...
-
javaでemlファイルからtxtファ...
-
任意のディレクトリ以下に存在...
-
wikiでローカルファイルのリン...
-
powershellでコンソール表示を...
-
ファイル名の特定の一文字のみ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
拡張子を元に戻す
-
.txtではなく.logの方が良いの...
-
VBAでワークシートを引数として...
-
多数のサブディレクトリ内のフ...
-
psqlでエラーログをとりたい
-
COPYコマンドで結合すると余計...
-
エクセルの各セルの内容をそれ...
-
バッチファイルで文字列削除に...
-
ファイルの最後に文字列挿入
-
UWSCでテキストファイルを開い...
-
バッチファイル 複数ファイル...
-
renameコマンドについて
-
ファイル名の一部をbatで変更し...
-
forfilesで検索したファイルを...
-
外部exeに対しての引数受け渡し
-
Windowsのバッチファイルを利用...
-
VBSでフォルダ内のテキストファ...
-
VBAでエクセルをtxtに変換する...
-
ExcelVBA テキストファイルUNIC...
おすすめ情報
batファイルにこだわりはなく、PowerShell等他の方法で可能だったら教えて頂きたいです。