- ベストアンサー
コマンドプロンプトでのcopyコマンド
- Windowsのコマンドプロンプトでのcopyコマンドで困っています。フォルダ内にある複数のテキストファイルを結合する方法が分かりません。
- copyコマンドを使用しても、結合する順番が前後する場合があります。
- 順番通りにファイルを結合する方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>0201の次に0210がきて0211,0212,..0219,0202,0203といった感じです。 > コマンドプロンプトからdirでファイル名を表示させると、確かに結合される順番と合っている様子。 うーん。正常なWindowsだとそうはならないはずですが。。。 dir /on で、希望通りの順序になるとすると、 del feb.log for /f %A in ('dir /on /b 02*.log') do type %A >>feb.log (バッチファイルにするときは、for /f %%A in ('dir /on /b 02*.log') do type %%A >>feb.log )
その他の回答 (1)
- bin-chan
- ベストアンサー率33% (1403/4213)
> 全テキストデータをnotepad等で開いて地道に結合する方法もあるのでしょうが、 > 効率悪すぎます。 この方法での効率改善を提案してみます。 1)コマンドプロンプトを開く 2)cdコマンドで「その」ディレクトリへ移動する。 ※cdと半角スペースを入力しておいてエクスプローラから フォルダアイコンをドラッグ&ドロップでもOK 3)dir 02*.log /b /o:n > DirText.txt [Enter] ※DirText.txtは任意のファイル名でOK これでDirText.txtに 0201.log 0202.log 0203.log 略 0229.log が出来上がります。 4)3)のファイルを、改行を置換できるテキストエディタで開く。 5)改行を+半角プラスに置換。 6)先頭行に、Copy半角スペースを、末尾に半角スペースとfeb.logを入力。 7)保存して拡張子をBATかCMDに変更。 8)バッチファイルを実行。 というのはいかがでしょうか?
お礼
ご回答ありがとうございます。 教えていただいた方法で解決しました。 >うーん。正常なWindowsだとそうはならないはずですが。。。 今回のデータ(ログ)は、このWindows-PCで作成されたログではありません。 きっと、このPCで出来たログであれば、順番どおりにならぶのでしょうが、 他のコンピュータからftpでgetしてくるログです。 しかも毎日getするわけではなく、必要なときの必要なログだけだったり、 まとめて全ログgetして上書きしたり....なので順番が前後してしまう状態 でした。