重写正在运行的批处理文件

问题描述 投票:0回答:1

我想看看是否有一种方法可以自行重写执行代码的批处理脚本。我知道可以创建另一个批处理文件来执行任务。

我想要实现的示例代码,

@echo off
title Self Re-Writing Program

set /p answer="> "
if %answer%=="1" (goto mode1)

:mode1
REM some code here to re-write itself with custom content


REM Exit Program
exit
windows file batch-file scripting batch-processing
1个回答
0
投票

您可以在运行脚本的末尾添加代码,甚至可以在当前执行的代码之后更改代码。但是切勿在当前执行的行之前更改代码。解析器“记住”它应该在代码的哪个位置继续(不是按行计数,而是按字节计数!)因此,在当前执行的行之前添加或删除字符将迫使解析器执行残废的行。这很有可能会以语法错误结尾。

https://stackoverflow.com/users/2152082/stephan答复

© www.soinside.com 2019 - 2024. All rights reserved.