![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-03 09:51 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 如何批处理实现用户输入内容替换boot指定位置的内容 |
| 可打印版本 936 / 7 |
| 第1楼 xingsys | 发表于 2007-02-11 08:35 |
| 初级用户 发帖 31 积分 80 | |
|
如何批处理实现用户输入内容替换boot指定位置的内容 timeout=3 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows 2003" /noexecute=optout /fastdetect multi(0)disk(0)rdisk(1)partition(1)\WINNT="Windows 2K_SVR" /noexecute=optout /fastdetect C:\grldr=xxxx c:\grldr=其它内容 在这个boot.ini文件 ,我想做一个批处理,把用户自己的输入替换xxxx,而位置不能变动,应该怎么办呢,比如运行批处理后,等待用户输入abc,然后将用户输入的abc,替换到boot.ini中 ,就成了 ---------- c:\grldr=abc c:\grldr=其它内容 这其中c:\grldr=abc的位置不能变,因为后面有其它的内容,具体怎么办呢 请高手指教 [ Last edited by xingsys on 2007-2-12 at 02:01 AM ] |
|
| 第2楼 slore | 发表于 2007-02-11 08:41 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
@echo off
set /p dosname=请输入名字 echo c:\grldr=%dosname%>>c:\boot.ini type c:\boot.ini pause>nul |
|
| 第3楼 xingsys | 发表于 2007-02-11 09:13 |
| 初级用户 发帖 31 积分 80 | |
|
谢谢,slore指教,看来我差得太多,多向你学习了,不过这只是将用户输入的写入了boot.ini文件 ,如果我是要将c:\grldr=111
将这个111替换为用户输入的,应该怎么办呢 |
|
| 第4楼 slore | 发表于 2007-02-11 09:27 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
你没试下代码?
|
|
| 第5楼 xingsys | 发表于 2007-02-12 02:05 |
| 初级用户 发帖 31 积分 80 | |
|
可能是我上面说得不太清楚,我的意思是用输入的替换c:\grldr=xxx 中的xxx,但位置不能变
set /p dosname=请输入名字 echo c:\grldr=%dosname%>>c:\boot.ini 这样子的话是将c:\grldr=%dosname% 直接加到了boot.ini的最后,而不是在原位置替换,不知怎么办呢 |
|
| 第6楼 slore | 发表于 2007-02-12 02:25 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
>>表示追加.
你要只修改那里,需要把boot.ini全读出来,然后到最后一句了把这个加上^ P里面怎么把字符累加我还不清楚. 如果你boot.ini前面的内容都一样的话可以这样! @echo off echo >c:\boot.ini echo timeout=2>>c:\boot.ini echo default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS>>c:\boot.ini echo >>c:\boot.ini echo multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows 2003" /noexecute=optout /fastdetect>>c:\boot.ini echo multi(0)disk(0)rdisk(1)partition(1)\WINNT="Windows 2K_SVR" /noexecute=optout /fastdetect>>c:\boot.ini ::把前面的重写进去 set /p dosname=请输入名字: echo c:\grldr=%dosname%>>c:\boot.ini type c:\boot.ini pause>nul [ Last edited by slore on 2007-2-11 at 02:40 PM ] |
|
| 第7楼 qingfushuan | 发表于 2007-02-12 02:31 |
| 高级用户 发帖 327 积分 502 | |
|
好像得先去掉boot.ini的属性呢 好像得先去掉boot.ini的属性呢
|
|
| 第8楼 slore | 发表于 2007-02-12 02:38 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
我的是ASH属性可以改呀~
貌似不R(只读)就可以了 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |