我正在编写一个批处理脚本,它从一个位置检索文件,并将其复制到另一个位置,然后将其重命名为autoexec.cfg
以修复游戏问题。我面临的唯一潜在冲突是用户是否已经创建了一个autoexec.cfg
文件。因此,我需要让我的脚本解析目标文件中的信息,并将其插入现有文件的最顶部(autoexec.cfg
如果存在)。我知道如何代替文本findstr
,但我需要使用行和列放置将文本插入到特定位置。这是我当前的脚本:
IF NOT EXIST "%LOCALAPPDATA%\ElDewrito\keys.cfg" goto :NOKEYS
IF EXIST "AutoExec.cfg" goto :HASKEYS
IF EXIST "%LOCALAPPDATA%\ElDewrito\keys.cfg" goto :EXECUTE
:NOKEYS
SET msgboxTitle=Error
SET msgboxBody=You don't have any keys to import!
SET tmpmsgbox=%TEMP%\Message.vbs
IF EXIST "%tmpmsgbox%" DEL /F /Q "%tmpmsgbox%"
ECHO msgbox "%msgboxBody%",0,"%msgboxTitle%">"%tmpmsgbox%"
WSCRIPT "%tmpmsgbox%"
goto :END
:HASKEYS
SET msgboxTitle=Error
SET msgboxBody=You've already imported your keys.
SET tmpmsgbox=%TEMP%\Message.vbs
IF EXIST "%tmpmsgbox%" DEL /F /Q "%tmpmsgbox%"
ECHO msgbox "%msgboxBody%",0,"%msgboxTitle%">"%tmpmsgbox%"
WSCRIPT "%tmpmsgbox%"
goto :END
:EXECUTE
COPY "%LOCALAPPDATA%\ElDewrito\keys.cfg" ".\AutoExec.cfg"
goto :SUCCESS
:SUCCESS
SET msgboxTitle=Import
SET msgboxBody=Keys successfully imported!
SET tmpmsgbox=%TEMP%\Message.vbs
IF EXIST "%tmpmsgbox%" DEL /F /Q "%tmpmsgbox%"
ECHO msgbox "%msgboxBody%",0,"%msgboxTitle%">"%tmpmsgbox%"
WSCRIPT "%tmpmsgbox%"
goto :END
:END
是否可以解析/复制一个基于文本的文档中的字符串,并将其粘贴到另一个特定位置,以避免破坏第二个文档的结构?我知道 Exchange 不是为了解决问题,我只是想知道这是否可行,以及如何实现它。