• ベストアンサー

COPYコマンドで結合すると余計な改行コードができる

batファイル内でCOPYコマンドで2つのファイルを結合するコードを書いています。 しかし、中身が空の0KBのデータ同士を結合すると、改行データが1つ含まれる1KBのデータが作成されてしまいます。 この改行データの作成を防ぐにはどのようなコマンドを書けばよろしいでしょうか。どなたかご存知の方がいれば宜しくお願い致します。 【2つのファイルを用意】 test01.txt 0KB test02.txt 0KB ↓ 【結合】 COPY test*.txt test.txt ↓ 【改行コードを含むテキストが作成される】 text.txt 1KB

  • wanna
  • お礼率64% (35/54)

質問者が選んだベストアンサー

  • ベストアンサー
  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.1

copy /B *.txt test.txt としてください。 copy /? でcopy コマンドのヘルプが表示されますので詳細はそちらを参照ください。

wanna
質問者

お礼

/Bを加えることで改行なしのファイルを作成することができました。 ご回答ありがとうございました。

その他の回答 (1)

  • Fushino
  • ベストアンサー率59% (329/550)
回答No.2

バイナリモードで結合するか、TYPEコマンドで結合するかといったところでしょうか。 copy /b test*.txt test.txt type test*.txt > test.txt

wanna
質問者

お礼

typeで結合する方法もあるんですね。参考にさせていただきます。 この度はありがとうございました。

関連するQ&A

  • powershellでの改行方法について

    テキストファイルの特定の文字列の後の改行コードをカンマに変換するbatファイルを作成しようと思っているのですがうまくいきません。 DOSで用意されているコマンドだけでは実現は難しいと思って、powershellコマンドを使っています。 実現は一つのbatファイルで行いたいのですが、どなたか実現方法を知っていましたら教えていただけませんでしょうか。 [JIKKO.bat] powershell.exe "$(Get-Content TEST.txt) -replace '★`n',','" >TEST_RESULT.txt [TEST.txt] あああ,いいい,ううう★ えええ かかか,ききき,くくく★ けけけ [TEST_RESULT.txtの理想] あああ,いいい,ううう,えええ かかか,ききき,くくく,けけけ

  • batファイルのcopy機能でファイルを結合

    batファイルのcopy機能でファイルを結合すると、最終行に必ず ■ がついてくるのですが、これを消す方法ご存知ありませんか? A.txtの内容 yahoo B.txtの内容 google test この2つのファイルを結合させてA.txtを見てみると A.txt yahoo google test ■ ↑最終行の■を消したい [コマンド] COPY A.txt + B.txt でファイルを結合 A.txtの最終行に ■ マークが現れる。

  • コマンドプロンプトでのcopyコマンド

    Windowsのコマンドプロンプトでのcopyコマンドで困っています。  フォルダ内に次のテキストファイル群があり、これを1つのファイルに結合したいです。    0201.log    0202.log    0203.log      :      :    0229.log と日付.logがある。  プロンプトから    copy 02*.log feb.log とすると結合してはくれるのですが、順番が前後する場合があります。  0201の次に0210がきて0211,0212,..0219,0202,0203といった感じです。  コマンドプロンプトからdirでファイル名を表示させると、確かに結合される順番と合って いる様子。  この順番を変えてやればいいのかと思いますが、やり方がわかりません。  もちろん    copy 0201.log + 0202.log + 0203.log + .... とやる方法や、全テキストデータをnotepad等で開いて地道に結合する方法もあるのでしょうが、 効率悪すぎます。  0201,0202,0203...と順番通りに結合する方法がありましたら、教えてください。  なお、type 02*.log >> feb.logでも望む結果は得られませんでした。

  • テキストファイルの結合+改行について

    ユーザーからの注文が1行1テキストファイルで断続的にメールに添付されて配信されてきます。MS-DOSのCOPYコマンドとワイルドカードを利用して結合のバッチファイルを作成しましたが、テキストファイルの最終に改行がない為、長~いレコードになってしまい、データベース(Accessですが)にインポートできません。改行付で結合、あるいはその他の解決方法はないものでしょうか? win98+Access2000※Accessはマクロをチョロッといじれる程度の初心者です。 よろしくお願いします。

  • コマンドプロンプト copyができません

    こんにちわ。 コマンドプロンプトのcopyコマンドについて質問させていただきます。 下記(1)~(4)処理内容のバッチファイルを作成しました。 デスクトップにある転送データ.txtを(2)、(3)、(4)の各workフォルダへコピーする処理です. (2)、(3)には正常にコピーされますが、なぜか(4)だけコピーされません。 (1)cd C:\Documents and Settings\XXX\デスクトップ (2)copy 転送データ.txt D:\work (3)copy 転送データ.txt C:\work (4)copy 転送データ.txt C:\Documents and Settings\XXX\デスクトップ\work どなたかご教授いただけますでしょうか? 環境 WindowsXP SP3

  • copyコマンドについて教えてください

    winxp pro sp2 下記bat fileを作成しました。fileが多いためです。 Q: 1.echo offが効きません。 2.新しいfileのみ上書きcopyしたい。 copy.bat: @echo off copy /v "c:\Program Files\aa\*.*" "d:\stock\bb\*.*" よろしくお願いします。

  • sedコマンドで改行コードを削除してテキストを一列にする 方法

    今、宿題が出ているのですが、 ネットで探しても基本的な部分以外を把握できなくて困っています。 sedコマンドで改行コードを削除してテキストを一列にするコマンド、お分かりのかたいたら尾根がします。 sed 's/\n//g' test.txt このコマンドでよいかと思ったのですがちっともうまくいきません。 何がおかしいのか、 どのコマンドが正しいのか、ご教授いただけないでしょうか。

  • Windowsのバッチについて

    お世話になります。 Windowsのバッチについてアドバイスをいただけますでしょうか。 ある文字列の書かれているファイルを1つ作成して「拡張子のあるもの」、「無いもの」2種類を作成したいと考えています。 例) 拡張子の無いもの:test01~test3000 拡張子のあるもの:text01.txt~text3000.txt 3000個と大量のファイルが必要なためechoとcopyコマンドを使って次のように指定しましたが、 ■sample.batの中身 ========================== echo testdata > test01 echo testdata > test02 echo testdata > test03 echo testdata > test04 echo testdata > test05 ~中略 copy test01 > test01.txt copy test02 > test02.txt copy test03 > test03.txt copy test04 > test04.txt copy test05 > test05.txt ~以下省略 ========================== 実際に作成された拡張子”.txt”の方を見てみると 次のように記載されており正しくファイルをコピーできません。 ■test01.txt~test05.txtの中身 =================================================== ファイルを同じファイルにコピーすることはできません。 0 個のファイルをコピーしました。 =================================================== どのようにすればファイルコピーを正しく行うことが出来ますでしょうか。 また、この方法では実際にbatファイルの編集に時間がかかってしまうためあまり実用的ではありません。 もし、他に良い方法があればアドバイスをいただけますと幸いです。

  • DOSコマンド(COPYコマンド)について

    DOS上でのCOPYコマンドについて確認します。 EXCELのファイルで、毎回ファイル名が変わるため、COPYコマンドで固定のファイル名にしようと思い、バッチ起動で、COPY \AAA\*.XLS \AAA\BBB.XLSで実行すると、コピー元と違うファイルサイズのBBB.XLSが作成されます。 中身を参照すると、文字化けしたものが 1レコードだけ作成されています。どうしてなのでしょうか? ※コピー元の*.XLSは、毎回 1ファイルのみです。

  • 改行コード

    いつもお世話になります。 あるバッファからsprintf()でバッファに格納したデータを ファイルにfprintf()で書き込むと、改行コードが混入します。 char b[5][128]; for( int p=0; p<i;p++ ){ sprintf(b[p]"TEST_CODE,%s,NAME\n", data[p]); fprintf(fp, "%s", b[p]); } ファイルには、 TEST_CODE,123 ,NAME TEST_CODE,456 ,NAME と%sの後に改行コードが入ります。 TEST_CODE,123,NAME TEST_CODE,456,NAME のようにしたいです。 何か方法はありますでしょうか? 環境がLinux環境のため、sedコマンドで行う方法も 考えましたが、コマンド自体イマイチわかりません。 関数またはコマンドでの方法がありましたら よろしくお願い致します。

専門家に質問してみよう