Batch file 使用.bat编辑另一个文件

Batch file 使用.bat编辑另一个文件,batch-file,Batch File,我想知道如何使用.bat文件编辑同一文件夹中的另一个文件 例如,我目前正在开发一个基于文本的游戏 我想要一个主文件(.bat)来编辑另一个文件(如果可能,另一个.bat)上的特定行 我刚刚编了一个例子 文件1: @echo off echo Change stats +1 to all stats echo press 1 set /p choice= if %choice% == goto chstats pause :chstats (我需要的东西就放在这里) 文件2: @echo off

我想知道如何使用.bat文件编辑同一文件夹中的另一个文件

例如,我目前正在开发一个基于文本的游戏

我想要一个主文件(.bat)来编辑另一个文件(如果可能,另一个.bat)上的特定行

我刚刚编了一个例子

文件1:

@echo off
echo Change stats +1 to all stats
echo press 1
set /p choice=
if %choice% == goto chstats
pause
:chstats
(我需要的东西就放在这里)

文件2:

@echo off
set atklvl= 1
set deflvl= 1
echo Player Stats
echo Attack: %atklvl%
echo Def: %deflvl%
pause

您可以从dos批处理文件中轻松地将文本写入另一个文件。尝试将这个简单的示例文本放入
test.bat
文件中。这将创建一个名为
test.txt
的两行输出文件。第一行将包含
aaaa
。第二行将包含
bbb bbb

echo aaaa > c:\test.txt
echo bbb bbb >> c:\test.txt

如果你需要做的是非常简单的这可以很好地工作。如果没有,您可能想尝试另一种脚本语言,如Python或Windows PowerShell。

您可以从dos批处理文件中轻松地将文本写入另一个文件。尝试将这个简单的示例文本放入
test.bat
文件中。这将创建一个名为
test.txt
的两行输出文件。第一行将包含
aaaa
。第二行将包含
bbb bbb

echo aaaa > c:\test.txt
echo bbb bbb >> c:\test.txt

如果你需要做的是非常简单的这可以很好地工作。如果没有,您可能想尝试另一种脚本语言,如Python或Windows PowerShell。

看来@tim的想法是正确的。这真的很糟糕,但我曾经在一个不允许我们下载windows版和perl版的sed版本的地方工作,留下了DOS和我的文本编辑器vim。我使用DOS在vim中打开文件,并通过命令行参数立即向vim发送命令,然后写入并退出,就好像它是sed或其他东西一样。非常糟糕,但我有一个工具,用于一些非常复杂的文本解析和替换(不仅仅是在文件的特定行上插入-基本上,如果你被锁在一个框中,只有dos和vim,lol)可以在代码中编辑,下面的第五行(if语句)没有第二个条件。例如,如果%choice%==1转到chstats,则不编写,而是在%choice%==goto chstats时编写。如果choice变量的值为“goto”,则会导致代码执行,然后运行命令“chstats”。可能想解决这个问题。看起来@tim的想法是对的。这真的很糟糕,但我曾经在一个不允许我们下载windows版和perl版的sed版本的地方工作,留下了DOS和我的文本编辑器vim。我使用DOS在vim中打开文件,并通过命令行参数立即向vim发送命令,然后写入并退出,就好像它是sed或其他东西一样。非常糟糕,但我有一个工具,用于一些非常复杂的文本解析和替换(不仅仅是在文件的特定行上插入-基本上,如果你被锁在一个框中,只有dos和vim,lol)可以在代码中编辑,下面的第五行(if语句)没有第二个条件。例如,如果%choice%==1转到chstats,则不编写,而是在%choice%==goto chstats时编写。如果choice变量的值为“goto”,则会导致代码执行,然后运行命令“chstats”。我可能想解决这个问题。