- ベストアンサー
複数のテキストファイルを結合するバッチファイル
複数のテキストファイルを1つにまとめたいと思います。 テキストファイルの内容は以下の通りです。 (Input_1.txt) 出身県,性別 神奈川,男 埼玉,男 千葉,女 (Input_2.txt) 出身県,性別 群馬,女 茨城,男 栃木,女 以下のようにまとめたいと思います。タイトルは先頭のみにしたい。 (Merge.txt) 出身県,性別 神奈川,男 埼玉,男 千葉,女 群馬,女 茨城,男 栃木,女 type Input*.txt > Merge.txt とすると、2つめのタイトルが付与されてしまいます。 どのようにすれば良いか教えて下さい。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
No.4です。 え~、予め意見を言いますと、本題へのベストなアンサーなら No5さんの more を使った方がシンプルで1番いいと思いますよ。 私は more を思い付かなかったまでで... for については /? で表示されるヘルプを見た方が間違いないですね。
その他の回答 (6)
- dscripty
- ベストアンサー率51% (166/325)
[ANo.5] で参考にしたページ書くの忘れてた。 → http://okwave.jp/qa/q6855897.html の [ANo.3] さんの回答
- dscripty
- ベストアンサー率51% (166/325)
Echo.出身県,性別> Merge.txt For %i In (Input*.txt) Do @More +1 %i>> Merge.txt
- davidfox
- ベストアンサー率58% (21/36)
次のようなバッチファイルでいいんじゃないでしょうか。 echo 出身県,性別 > Merge.txt for /f "skip=1 delims=, tokens=1,2*" %%i in (Input_1.txt Input_2.txt) do echo %%i,%%j >>Merge.txt
- utakataXEX
- ベストアンサー率69% (711/1018)
自分ならこうします。 ↓ REM タイトルのみのMerge.txtを作成 echo 出身県,性別 > Merge.txt REM 除外grepしつつAPPENDでMerge.txtにリダイレクト type Input*.txt | findstr -v 出身県,性別 >> Merge.txt ただし、各テキストに重複がある場合、これだと対応はできません。 (重複がなければ以下は不要) 私の環境はUnixコマンドのWindows移植版が入っているのでこんな感じで重複を削除できます。 echo 出身県,性別 > Merge.txt type Input*.txt | findstr -v 出身県,性別 | sort | uniq >> Merge.txt 上記の場合、並び順は入力順ではなくなるので注意してください。 UnixコマンドのWindows移植版はCygwinなどが一般的だと思いますが、Microsoftも無償で提供しています。 ↓ Microsoft Windows Services for UNIX(SFU) Subsystem for UNIX-based Applications(SUA)
- asuncion
- ベストアンサー率33% (2127/6289)
>copy Input_1.txt+Input_2.txt Merge.txt 残念なことに、 「2つめのタイトルが付与されてしまいます。」 という結果は同じですね。
- 佐藤 志緒(@g4330)
- ベストアンサー率18% (840/4653)
copy Input_1.txt+Input_2.txt Merge.txt どうです
補足
お忙しい中、回答頂きありがとうございました。 for /f "skip=1 delims=, tokens=1,2*" %%i in (Input_1.txt Input_2.txt) do echo %%i,%%j >>Merge.txt について、 /f skip=1 delims= tokens=1,2* %%j について、内容を簡単に説明して頂けないでしょうか。 また、inの後の、()内は、ファイル数分、指定しないといけないのでしょうか。