web-dev-qa-db-ja.com

複数のファイルを連結するためのコマンドラインまたはバッチコマンド

1つのディレクトリに50個のテキストファイルがあります。

それらのファイルを単一のファイルに連結するためのWindowsコマンドラインメソッドはありますか?

私は Windows Vista を使っています。

すべてのファイルの名前を入力したくありません。

95
Mirage

すべてのファイルの名前を入力したくありません。

それは避けるのは簡単です。このフォルダでコマンドプロンプトを開き、次のコマンドを入力します。

copy /b *.txt newfile.txt

押す Enter

これで、このフォルダ内のすべてのテキストファイルを日付の昇順に並べ替えて、newfile.txtという名前の単一のファイルにまとめることができます。

私の最終的な目的は、各テキストファイルの内容をExcelシートの別々の列に格納することです。

これがあなたの「究極の目的」を達成するのに役立つかもしれないチュートリアルです:

すべてのCSVファイルまたはTXTファイルを1つのワークシートにまとめる

126
Molly7244

各連結ファイルの末尾にnewLineを追加するには、次のようにtypeではなくcopyを使用します。

type *.txt > newfile.txt
37
Echeban

あなたがテキストファイルを追加することについて話していると仮定すると、それらを一緒に追加するためにcopyコマンドを使用することができます。

copy file1+file2+file3 targetfile

ファイルがたくさんある場合は、一度に1つずつファイルを追加することでループできます。

バイナリファイルの場合は、 '/b'オプションを追加します。

copy /b file1+file2+file3 targetfile

これは、作業しているバイナリファイルが連続して追加できることを知っていることを前提としています。そうでなければ、あなたは無駄なデータの塊を得るでしょう。

31
nik

コマンドプロンプトで次のコマンドを実行します。

for %f in (*.txt) do type "%f" >> output.txt
8
Abhishek Goel

次の.batファイルは、XIT.forという名前のファイルを除くすべての* .forファイルを、MASTER.forという名前の空のファイルに追加します。

type NUL > MASTER.for
FOR %%G IN (*.for) DO IF NOT "%%G" == "XIT.for" copy /A MASTER.for+"%%G" && echo. >> MASTER.for

:)

3
Echeban