やりたいこと検索

複数のファイルを結合する

 

目次

 

元となるファイル内容の下に別のファイル内容を追加する

元となるファイル内容の下に別のファイル内容を追加することは簡単です。

これにはいくつかの方法があり、まずは「copy」コマンドを使用する方法です。

元となるファイル「source.txt」が、

通常はユーザー入力だがそれを自動で入力する 「source.txt」ファイルの内容

であり、この下に追記したい内容が「add.txt」ファイル、

通常はユーザー入力だがそれを自動で入力する 「add.txt」ファイルの内容

として存在していたとします。

これを結合するには「copy」コマンドと結合の「+」を使って、

とします。

したがって、いまは、

とすれば、以下のように内容が結合された「source_add.txt」ファイルを得ることができます。

通常はユーザー入力だがそれを自動で入力する 「source_add.txt」ファイルの内容

 

別の方法として、「for /f」コマンドでファイルから文字列を読み込みファイルに書き出す方法もあります。

「for /f」コマンドで「source.txt」ファイル内の内容を読み込むには、以下に示すバッチファイル(read_filecontents.bat)を作成します。

「for /f」コマンドによるファイル内の内容読み取りについては詳しくは「ファイルから文字列を読み取る -やりたいこと検索-」をご覧下さい。

以下、実行結果です。ここではまだコマンドプロンプト上への出力となっています。

通常はユーザー入力だがそれを自動で入力する ファイル内容を「for /f」コマンドで読み込み出力

 

同様に、「add.txt」についてもファイル内容を読み取り、「source_add2.txt」ファイルへ出力するプログラムは以下の通りです。

「for /f」コマンドで2つのファイル内容を順に読み込み、「source_add2.txt」ファイルに書き出しているだけです。

4行目にファイルが既に存在していれば、削除するコマンドを書いていることに注意して下さい。ファイル出力に「>>」を使用しているため、この行がないと前の内容が残ったままになってしまいます。「>」や「>>」コマンドについては、「ファイルへ出力する -やりたいことから検索-」を参照下さい。

 

ここでは、「copy」コマンドと「for /f」コマンドを使用する二つのファイル内容結合方法を紹介しました。結論として、単純なファイルの結合には「copy」コマンドを使用するのがもっとも簡単です。しかし、少しアレンジを加えたいときなど場合によっては、このように文字列を読み込む方法でないと実現できない操作を存在するのでどちらも重要な知識です。

次節では、「for /f」コマンドを使用した方法でしかできないファイルの結合について紹介します。

 

元となるファイル内容の途中に別のファイル内容を挿入する

前節では、元となるファイルの下に別のファイル内容を付け足しました。ここでは、元となるファイル内容の途中に別のファイル内容を挿入することを考えます。

元となるファイル内容が、

通常はユーザー入力だがそれを自動で入力する 「source_between.txt」ファイルの内容

とある場合、[子の説明]部分に前節の「add.txt」の内容を挿入することを考えます。

これは「for /f」コマンドによるファイル内容の読み込みと「文字列の置換」を組み合わせて実現可能であり、以下がそのバッチファイル(combine_files_between.bat)のプログラムです。

4行目は前節に述べた同様の理由で古い出力ファイルを削除しています。

7行目からの「for」ブロックで元となるファイル内容を1行ずつ読み込んでいます。

9行目の「if」ブロックでは読み込んだ文字列が、「[子の説明]」であったら「add.txt」ファイル内容を「for」コマンドで出力します(13~15行目)。そうでない場合は読み込んだ内容をそのまま出力しています(19行目)。

 

以下は実行結果です。

通常はユーザー入力だがそれを自動で入力する 「source_add_between.txt」ファイルの内容

目的通り、元となるファイル内容の間に別のファイル内容を挿入できました。

 

Windowsバッチファイル初心者へ向けた入門書を作成しました


Windowsバッチファイル初心者の方へ向けた入門書(PDF)を作成しました。


・初めてWindowsバッチファイルを勉強してみようと思っている方

・使ったことはあるが一から基礎を学び直したい方


へ向けて丁寧な解説を行っています。


「全くプログラムを知らない方でも、この入門書を読んだ後には、Windowsバッチファイルの中級者レベルになれるように」をコンセプトに執筆したものです。


この本を読めば、バッチファイルを使ったファイルやフォルダの操作に関しては一通りのことができるようになります。そうなればもう十分中級者と呼べるレベルですので、あとは自分のやりたいことを実現しようとする中で徐々に知識を蓄えていくだけですぐに上級者へなれるでしょう。


詳しくみる

関連ページ

コメントを残す