[掲載日] ([更新日] ) この記事は約 2 分で読めます

簡単に大量(複数)のtsv・csv・txtを一発で結合するたったひとつの方法

複数や大量のtsv・csv・txtをまとめたいときがあると思います。
いちいちコピー>ペーストを繰り返していては時間がかかりますね。

よくわからない人の為に
大量のtxt・csvを10秒で結合する初心者でも簡単な方法!超図解!を追記しました!(2015/08/17)

Ruby on Railsのプログラミングを最短1ヶ月で習得
RailsHack講座では13日間の無料期間(全額返金保証)で安心のスクールです。
WEBアプリケーションが実際に作成できます。
» RailsHack講座の13日間の無料体験(全額返金保証)はこちら

tsv・csv・txtを結合した結果

結果から言うと ファイル数250個で合計3.9GBのファイルを1つに合体してまとめることが出来ました。

tsv・csv・txtを一発で結合する方法

コマンドを使って解決します。

  1. Windowsなら スタートメニュー>cmd でコマンドプロンプトを起動します。
  2. コマンド画面に
    cd c:\testdata
    type *.csv > c:\testdata/alldata/csvall.csv
    でエンターキーを押します
  3. あとは待てば alldataフォルダに csvall.csv が作成されます。

tsv・csv・txtを結合するポイント

Cドライブで作業することを前提にやりました。

まず先に、Cドライブに testdataを作ります。
testdataフォルダの中に alldataフォルダと CSVファイル一式を入れます。

testdata
┣alldata
┣01.csv
┣02.csv
┣03.csv

cd c:\testdata
type *.csv > c:\testdata/alldata/csvall.csv

こんな感じで入れておいて、あとはコマンドを打つだけ。
簡単で早いです。

ファイルがTSVやTXTはどうするの?

tsvやtxtも同様に、

tsvなら

cd c:\testdata
type *.tsv > c:\testdata/alldata/csvall.tsv

txtなら

cd c:\testdata
type *.txt > c:\testdata/alldata/csvall.txt

これだけで大量のデータを一発で結合出来ます。
よくわからない場合は詳しく解説しますのでコメントをいただければと思います。

こんなことを手軽にやりたいならプログラミングスクールに通ってみるのもあり

独学で勉強すると、挫折する可能性大。実際おおくの人が独学で挫折してしまう。

理由は手軽に始められるけど、わからなくなったり、エラーが出るとどうにもならなくなるから。

それなら初めからスクールに通った方が時間のコストを考えると割安。

TECH::EXPERTなら全額返金保証のプログラミングスクールだから安心して始められますね。

無料カウンセリングを今すぐ試してください。

大量CSV結合の参考になったサイト

簡単に大量(複数)のtsv・csv・txtを一発で結合するたったひとつの方法へのコメント

アバター
どこかの社員さん

すげー!!!!!!!

[2015/02/13]
アバター
関口さん

初心者で、説明を読んでも全く解りません。100個以上のtxtを一つにまとめてた使いたいのですが。手順を解りやすくお願いします。

[2015/08/15]
アバター
よっちゃんだよ。さん

1度目はうまくできましたが、2度目同じコマンドをいれたつもりなのですが、うまくいきませんでした。
何がうまくいかないかというと、各CSVファイルの項目も全てデータとして結合されてしまいました。
項目は一番上だけにあって、その下はデータのみにしたいのです。
1度目は、そのように結合されたので、安心していたのですが、2度目以降同じようにできず悩んでいます。

[2015/10/05]
    アバター
    りょうさん

    ご連絡ありがとう御座います。
    >各CSVファイルの項目も全てデータとして結合されてしまいました。
    この動作で合っております。

    簡単に解決する方法としては
    1:Excelの重複削除またはソートを使って削除する
    2:結合前のCSVファイルにある項目を全て削除してから結合する

    この方法がもっとも簡単に作成可能ですのでお試し下さい。

    [2015/10/06]
      アバター
      よっちゃんだよ。さん

      ありがとうございます。
      最初のやり方は、多分先に加工したデータも一緒に結合していたようです。
      これでも作業量は大幅に減りました。

      [2015/10/06]
アバター
tmpさん

書き出し先ファイルの拡張子は、結合元データと別の拡張子にしておかないとダメじゃないですかね(書き出した分を再度マージしてしまう)。
type *.csv > tmp.txt
で、あとからtxt→csvに変更。

[2016/02/17]
    アバター
    りょうさん

    ご連絡ありがとう御座います。
    拡張子を変える必要は御座いません。
    ファイル名をcsvall.csvのファイル名を変えれば良いだけです。
    また安全のためにalldata内は結合前は空にしておいた方が理想です。

    数ファイル程度であればコマンドを使う必要は御座いませんが、数十ファイル〜数百ファイルを結合する為に向いているコマンドですので
    上記方法が一つの選択肢になればと思います。

    [2016/02/18]
アバター
みやさん

業務で使用したいのですが、管理者権限がないためCドライブにテキストデータを移動することが出来ません。
他の方法があればご教示頂けないでしょうか。
何卒よろしくお願いいたします。

[2016/06/29]
    アバター
    りょうさん

    Cドライブ以外のフォルダへ変更すればよいかと思います。
    例えばDドライブなど。
    なので、 「c:」と記述がある部分を「D:」と変更すれば同じように動作致します。
    Cドライブの下層フォルダなら「 c:\tarou\」とすれば良いです。
    権限が無ければ、アクセス出来るドライブ名か下層フォルダ名まで変更すれば同じように動作します。

    [2016/06/29]
アバター
かぴばんばらさん

txtを結合する際に、改行を入れたい場合はどうすればよいでしょうか。
よろしくお願いいたします。

[2016/09/28]
    アバター
    りょうさん

    結合するコマンドなので、結合される際に、自動で次の行に改行されて結合します。

    [2016/09/28]
アバター
さゆさん

RMSで鍵がかかっているせいか、サイズは大きくなっているのに、開くと一つのCSVしかなく、全く結合されていません。
鍵を外しても、置ける場所が会社共有のネットワーク上のせいか、CMDではUNCパスは現在のディレクトリとしてサポートされません と、出て ファイルが見つかりません とでます
意味が全くわからないので困っています
方法はありますか?ご教示頂ければ。。よろしくお願いします。

[2016/12/06]
    アバター
    りょうさん

    私でも全く意味がわかりません。
    このプログラム自体にプロテクトや鍵は掛けておりません。
    そもそもコマンドなので、多分保存している場所またはドライブが悪かと思いますのでご参考いただけると幸いです。

    [2016/12/06]