バッチファイルを使用してテキストファイルに書き込む方法を教えてください。


192

バッチファイルと同じディレクトリにあるテキストファイルに1行のテキストを書き込むことができるスクリプトを作成する必要があります。

回答:


308

を使用してecho、出力をテキストファイルにリダイレクトできます(以下の注を参照)。

rem Saved in D:\Temp\WriteText.bat
@echo off
echo This is a test> test.txt
echo 123>> test.txt
echo 245.67>> test.txt

出力:

D:\ Temp> WriteText

D:\ Temp> type test.txt
これはテストです
123
245.67

D:\ Temp>

ノート:

  • @echo off 各コマンドのコンソールへの出力をオフにします
  • 特定のパス名を指定しない限り、リダイレクトによって、>または>>現在のディレクトリ(コードが実行されているディレクトリ)に書き込まれます。
  • echo This is a test > test.txt用途1 >、すでに新しいコンテンツに存在する任意のファイルを上書きします。
  • 残りのechoステートメントは>>、テキストファイルを上書きするのではなく、2 文字を使用してテキストファイルに追加(追加)します。
  • type test.txt単に種類コマンドウィンドウにファイル出力。

14
最後の3つの@兆候は、すでに存在していたため冗長です@echo off。エコーがオフになっていない場合にのみ必要です。stackoverflow.com/a/21077142/632951
Pacerier

119

コードブロックを1つだけ使用する方が簡単で、リダイレクトが1つだけ必要です。

(
  echo Line1
  echo Line2
  ...
  echo Last Line
) > filename.txt

7
OMGは非常にシンプルで、中途半端な人間になっています。これは、スクリプトがプログラミングのジバッシュな世界のイントロのようであるため、印象的
です

これは私のために仕事をしませんでしたが、 `ブロックの前にリダイレクトして変化>ファイル名.txt(`やった仕事。
willw

2
@willwおそらく、コードブロックのどこかに追加の閉じかっこがあるはずです。それ以外の場合は、リダイレクトをブロックの前または後のどちらに置いても機能します
jeb

@jebたぶん-元のテストファイルがないので、確信が持てません。確かに、私はその後、閉じた)文字を^)としてエスケープする必要がありましたが、これはあなたの仮説をサポートする傾向があります。それでも、少なくとも私たちの議論は他の人にトラップの可能性を警告しています。
willw

23

echo "blahblah"> txt.txt txtを消去し、その場所にblahblahを配置します

echo "blahblah">> txt.txt txtの新しい行に何とか書く

どちらも存在しない場合は、両方が新しいtxtを作成すると思います(最初のものが存在することは知っています)

txt.txt上記の「」のところに、必要に応じてファイルパスを挿入できます。たとえばC:\Users\<username>\desktop、デスクトップに配置します。


2
はい、両方に当てはまります。残念ながら、あなたの答えは既存の答えに追加情報を追加しません。(メンション'%~dp0は...)
Stephan

同じフォルダ内のtxtに書き込むには?
Darth Tater、2015

バッチファイルが存在するフォルダに書き込む(cdまたはpushdコマンドに関係なく)
Stephan

14
    @echo off

    (echo this is in the first line) > xy.txt
    (echo this is in the second line) >> xy.txt

    exit

2つ>>は、2行目がファイルに追加されることを意味します(つまり、2行目はxy.txtの最後の行の後に始まります)。

これは次のようになりxy.txtます。

this is in the first line
this is in the second line

5

バッチファイルcolor 0aを使用したタイトルライティングの@echo

echoサンプルテキスト> Filename.txt echo追加テキスト>> Filename.txt

@ECHO OFF
Title Writing Using Batch Files
color 0a

echo Example Text > Filename.txt
echo Additional Text >> Filename.txt

4
  • copy con 長いテキストを書くために使用できます
  • 例:

    C:\ COPY CON [ドライブ:] [パス] [ファイル名]

    ....コンテンツ

    F6

    1個のファイルがコピーされます


バッチファイルでは、copy conはユーザーにプロンプ​​トを表示します。
heringer

3
@echo off

echo Type your text here.

:top

set /p boompanes=

pause

echo %boompanes%> practice.txt

お役に立てれば。文字列名(IDKの名前)とファイル名を変更する必要があります

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.