バッチファイルを使って複数のファイルを1つに結合する方法

business-notepc プログラミング

そまちょブログのそまちょ(@somachob)です。

バッチファイルは、手動でする作業を自動化してくれる便利なものです。

バッチファイルとは

バッチファイルは、複数のコマンドをまとめて実行するためのファイルであり、Windowsのコマンドプロンプトで使うことができます。

バッチファイルを使えば、手動でコマンドを入力する手間を省き、自動化や効率化に役立ちます。

繰り返し同じ手順を何度も実行するときには、バッチファイルを使えば簡単に行えるようになります。

バッチファイルを作成するには、メモ帳などのテキストエディタを開いて、テキストファイルにコマンドを書いて、そのファイルを保存するときに拡張子を「.bat」や「.cmd」にするだけです。

詳しくは、次の記事を参考にしてください。

ファイルを1つにまとめるには

複数のCSVファイルからデータ解析を行いたいときに、1つのファイルにまとめることで効率的に行うことができるようになります。

1つのファイルにまとめることで、データの管理や処理が簡単になり、作業効率も向上します。

手作業で1つ1つのファイルを開き、その内容をコピーして別のファイルに貼り付ける。

そんなことを手作業ですれば時間もかかり大変です。

そんなときにバッチファイルを使ってファイルをまとめる方法を知れば、大量のファイルを一瞬でまとめることができるようになります。

具体的なコードを交えながら、複数のファイルを1つにまとめるための copy コマンドについて解説します。

copy コマンド

バッチファイルを使って複数のファイルを1つにまとめるには copy コマンドを使います。

copy コマンドはファイルのコピーをすることができるコマンドですが、複数のファイルをまとめるにも使うことができます。

基本的な使い方

copy コマンドは、次のように使うことができます。

copy コピー元ファイル コピー先ファイル 

複数のファイルをまとめるときには、コピー元ファイルでまとめたいファイルを「+」で続けていきます。

copy まとめるファイル1+まとめるファイル2 コピー先ファイル 

コピー元ファイルには、まとめたい複数のファイルのパスを指定して、コピー先ファイルにはまとめた後のファイル名を指定します。

copy コマンドは、コピー元ファイルで指定した順番で1つのファイルにまとめることができます。

次のように、同じフォルダにある「file1.txt」と「file2.txt」というファイルを「margefile.txt」というファイルにまとめてみます。

bat-copy-marge-1

エクスプローラーで、まとめたいファイルがあるディレクトリを開いて、アドレスバーに cmd と入力します。

そうするとエクスプローラーで開いていたディレクトリでコマンドプロンプトが起動します。

bat-copy-marge-2

こうすることで、コピー元のファイルをファイル名だけで指定することができます。

コマンドプロンプトに次のコマンドを入力して実行します。

copy file1.txt+file2.txt margefile.txt

実行すれば、同じディレクトリに「margefile.txt」ができました。

「file1.txt」→「file2.txt」の順番でまとめられています。

bat-copy-marge-3

すべてのテキスト(CSV)ファイルをまとめる

まとめたいファイルの数が多い場合は、1つ1つのファイルをコマンドに書くのは大変です。

そんなときは、「*(ワイルドカード)」を使うことで簡単に書くことができます。

同じディレクトリ内のすべてのテキストファイルをまとめることもできます。

「marge」フォルダに、「1.txt」から「10.txt」までの10個のテキストファイルをまとめてみます。

bat-copy-marge-4

次のコマンドを実行すれば、1つのファイルにまとめることができます。

copy *.txt marge\marge.txt

バッチファイルを作成する

次のようなバッチファイルを作成しておけば、バッチファイルをまとめたいフォルダにおいて、クリックするだけで1つのファイルにまとめることができます。

@echo off
rem まとめたファイルを保存するフォルダを作成
mkdir marge

rem バッチファイルと同じフォルダの txt ファイルを1つにまとめる
copy *.txt marge\marge.txt

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