![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-10 06:54 |
共 47,811 主题排行 / 349,897 发帖 / 今日 2 篇 / 48,255 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 命令行怎么用16进制的字符替换文件内容?change也不行的 |
| 可打印版本 1,409 / 7 |
| 第1楼 okace | 发表于 2008-11-04 17:30 |
| 初级用户 发帖 15 积分 130 | |
|
命令行怎么用16进制的字符替换文件内容?change也不行的 请问如何在命令行,用任意长度的16进制字符,替换任意文件?
我试了change,用 &h 可以替换较短的16进制字符,但是整条命令超过128字符就不能运行了。 其他类型的软件也可以,不一定要dos程序,win程序也可以,只要能支持命令行替换,这样只要一行命令(或多行)就自动替换。 对了,替换的16进制字符长度可能超过1K的。 不知道意思有没有表达清楚。找了一整天了,快晕了。请帮忙! [ Last edited by okace on 2008-11-4 at 17:41 ] |
|
| 第2楼 okace | 发表于 2008-11-04 17:33 |
| 初级用户 发帖 15 积分 130 | |
|
好像sed也不行的,它的替换貌似仅支持16进制的数字和字母,其他的字符就不行了。
|
|
| 第3楼 HAT | 发表于 2008-11-04 17:41 |
| 版主 发帖 5,017 积分 9,023 | |
|
转帖仅供参考,未测试是否可行。
http://upload.cn-dos.net/img/1051.zip |
|
| 第4楼 okace | 发表于 2008-11-04 17:53 |
| 初级用户 发帖 15 积分 130 | |
|
楼上的,刚去作者网站认真看了帮助,不过明显不支持16进制字符的替换啊。
change filename /from &H0F0F0F0F /to &H0D0D0D0D 需要能直接输入16进制字符,可惜change的命令行长度要小于128字节,否则退出执行,55555555 [ Last edited by okace on 2008-11-4 at 18:18 ] |
|
| 第5楼 HAT | 发表于 2008-11-04 18:21 |
| 版主 发帖 5,017 积分 9,023 | |
|
Re 4楼 用change的话,一定要一次替换那么长的字符吗?分开替换能否满足要求?
能否给出真实数据来说明一下替换之前和替换之后,文本内容是啥样的? |
|
| 第6楼 okace | 发表于 2008-11-04 18:46 |
| 初级用户 发帖 15 积分 130 | |
|
change aa.jwn /from "&h180000000C00000000000000000000000000803F0C" /to "&h180000000C00000000000000000000000000803F0C000000080000000000C03F0000004008"
上面是要替换的内容,而且远远不止这么短。。。 附件是要处理的文件,不是文本内容。 上面的内容替换的地址是 偏移量2A11,不过这个地址不是确定的,可能变动。 附件 AA.rar (1.2 KiB) |
|
| 第7楼 yishanju | 发表于 2008-11-05 11:55 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
我听说好像是批处理最长只支持128位字符
超长的字符不能拆分成几次替换么 |
|
| 第8楼 yishanju | 发表于 2008-11-05 11:56 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
如果实在不行。。。建议你用PYTHON 写脚本实现吧。
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |