如何使用批处理文件写入文本文件?

时间:2013-11-09 16:15:13

标签: file batch-file text

我需要创建一个脚本,可以将一行文本写入与批处理文件相同的目录中的文本文件。

7 个答案:

答案 0 :(得分:245)

您可以使用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
This is a test
123
245.67

D:\Temp>

注意:

  • @echo off关闭每个命令到控制台的打印
  • 其余行开头的
  • @会停止打印echo命令本身,但不会抑制echo输出。 (它允许显示@echo之后的其余部分。
  • 除非您为其指定特定的路径名​​,否则使用>>>的重定向将写入当前目录(运行代码的目录)。
  • @echo This is a test > test.txt使用一个>覆盖任何已存在新内容的文件。
  • 其余的@echo语句使用两个>>字符附加到文本文件(添加到),而不是覆盖它。
  • type test.txt只是将文件输出键入命令窗口。

答案 1 :(得分:89)

只使用一个代码块更容易,那么您只需要一个重定向。

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

答案 2 :(得分:15)

echo "blahblah"> txt.txt将删除txt并将blahblah放入其中

echo "blahblah">> txt.txt会将blahblah写入txt的新行

我认为如果不存在,我们都会创建一个新的txt(我知道第一个会这样做)

如果上面写有“txt.txt”,则可以插入文件路径。例如C:\Users\<username>\desktop,将其放在桌面上。

答案 3 :(得分:10)

    @echo off

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

    exit

两个>>表示第二行将附加到文件中(即第二行将在xy.txt的最后一行之后开始)。

这就是xy.txt的样子:

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

答案 4 :(得分:3)

@echo off 标题使用批处理文件编写 颜色0a

echo示例文字&gt; FILENAME.TXT echo其他文字&gt;&gt; FILENAME.TXT

@ECHO OFF
Title Writing Using Batch Files
color 0a

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

答案 5 :(得分:2)

  • 您可以使用copy con撰写长文
  • 示例:

      

    C:\ COPY CON [drive:] [path] [文件名]

         

    ....内容

         

    F6

         

    复制了1个文件

答案 6 :(得分:1)

@echo off

echo Type your text here.

:top

set /p boompanes=

pause

echo %boompanes%> practice.txt
希望这会有所帮助。你应该改变字符串名称(IDK所谓的名称)和文件名