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


当前回答

你可以使用copy con来写一篇长文本 例子: C:\COPY CON[驱动器:][路径][文件名] .... 内容 F6 复制1个文件

其他回答

Echo "blahblah"> TXT . TXT将删除TXT和blahblah在它的地方

Echo "blahblah">> TXT . TXT将在TXT中的新行上写入blahblah

我认为两者都会创建一个新的txt,如果不存在(我知道第一个)

上面写着“txt.txt”,如果需要,可以插入文件路径。例如C:\Users\<username>\desktop,这将把它放在他们的桌面上。

你可以使用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关闭打印每个命令到控制台 除非您为其指定了特定的路径名称,否则使用>或>>的重定向将写入当前目录(代码正在运行的目录)。 test.txt使用一个>来覆盖任何已经存在的包含新内容的文件。 其余的echo语句使用两个>>字符附加到文本文件(add to),而不是覆盖它。 test.txt类型只是将文件输出输入命令窗口。

    @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

你可以使用copy con来写一篇长文本 例子: C:\COPY CON[驱动器:][路径][文件名] .... 内容 F6 复制1个文件

只使用一个代码块更容易,然后只需要一个重定向。

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