• ベストアンサー

DOSバッチにて外のファイルをリードする方法

DOS batchにて、外のファイルの中身をリードしたい。 どこかのサイトにて、下記を知りました。 FOR /F "delims=" %%a IN (c:\\GTM2\myfile.txt) DO (set abc=%%a) call echo step=%abc% しかし、この方法は、ファイルの最後の行を掴んでくるもののようです。 今、小生の欲しい事柄は、ファイルの最初の行の情報を掴むことです。 宜しくお願い申し上げます。

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

  • ベストアンサー
  • pita-gora
  • ベストアンサー率70% (102/145)
回答No.2

ファイルの1行目の取得ですね。 これでいかでしょうか。 set /p abc=<c:\GTM2\myfile.txt echo %abc%

atom_28
質問者

お礼

ありがとうございます。 参考にさせていただきます。

その他の回答 (1)

  • M_Sato
  • ベストアンサー率54% (550/1003)
回答No.1

バッチのコマンドで実現する方法はわかりませんが、ストリームエディタSEDをインストールしておくと簡単に処理できるのではないでしょうか。 http://www.vector.co.jp/soft/dos/util/se000880.html このsed.exeをCドライブのルートに置いておき、元のファイルmyfile.txtと同じフォルダ内で以下を記述したバッチファイルを実行すると、1行目をheadline.txtに書き込みます。 c:\sed -e "1q" myfile.txt > headline.txt (-eは記述されているスクリプトを実行するオプション、スクリプト"1q"の意味は、「1行目を読んだら終了せよ」です。sedはデータを1行ずつ読んで、(編集後)特に制限しなければ標準出力に吐き出します)

atom_28
質問者

お礼

ありがとうございます。 参考にさせていただきます。

関連するQ&A