使用批处理向 boot.ini 添加选项

使用批处理向 boot.ini 添加选项

我需要创建一个批处理文件,将文本添加到 boot.ini 文件的最后一行,例如我的 boot.ini 的最后一行是:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

我需要添加 /bootlogo /noguiboot 选项,因此应该修改 boot.ini 中的行:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /bootlogo /noguiboot

我可以用批处理文件来做这个吗?还有其他方法吗?

谢谢。

答案1

不知道我是否理解你的问题,但添加一行很容易:

echo "blabla" >> c:\boot.ini

答案2

我不确定你是否可以使用普通的 WinXP 命令行来做到这一点。尝试免费软件补丁

答案3

我可能会用SED这个:

@echo off
cd /d c:\
attrib -r -h -s boot.ini
sed -e "s/fastdetect$/fastdetect \/bootlogo \/noguiboot/" boot.ini > boot.$$$
ren boot.ini boot.old
ren boot.$$$ boot.ini
attrib +r +h +s boot.ini

SED作为以下部分提供图形化界面或者你可以找到独立版本这里。另外,正如我所写,SED上面的代码将对所有以“fastboot”结尾的行进行替换。您可以使搜索字符串更长,以保证只在特定的一行上进行操作。

答案4

您可以采用以下解决方法来实现此目的:

set rand=%RANDOM%
echo /bootlogo /noguiboot > %TEMP%\%rand%.txt
attrib -R -S -H C:\boot.ini
copy C:\boot.ini+%TEMP%\%rand%.txt C:\boot.ini
attrib +R +S +H C:\boot.ini
del %TEMP%\%rand%.txt

基本上,这会创建一个临时文件,将数据回显到其末尾,然后用于与临时文件copy连接。C:\boot.ini

相关内容