中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-10 18:46
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » [已解决]先MD5,再Base64,最后ECHO输出,怎么写方便?
可打印版本  2,405 / 3
第1楼 ec2049 发表于 2007-01-23 04:33
初级用户 发帖 25 积分 57
[已解决]先MD5,再Base64,最后ECHO输出,怎么写方便?
对text先MD5,再Base64,最后ECHO输出:

我不知道怎么用set写,专门输出一个txt很不爽啊…

这是使用的外部工具:
http://zhenlove.com.cn/cndos/fileup/files/md5.zip
http://zhenlove.com.cn/cndos/fileup/files/base64.zip

[ Last edited by ec2049 on 2007-1-23 at 07:46 AM ]
第2楼 redtek 发表于 2007-01-23 06:05
金牌会员 发帖 1,147 积分 2,902
不生成临时文件的方法:





(下面是分析过程,没用)


本来想 Echo %字符串%|md5|base64 直接就输出处理过的字符串。
结果发现这个 md5.exe 工具的作者真是有意思,非得在 md5 值的后面再加上个处理的是谁(文件名或是管道过来的源)这问题影响了连续管理操作。
不然连 for 都不要了,一行搞定。


C:\TEMP\M MD5>echo Redtek|md5
44857CF177B0D2EF4F7A909770F5263E -
(上面多了个“-”源,如果是 md5.exe <文件名, 那么md5值后面就是这个文件名。)


C:\TEMP\M MD5>echo 44857CF177B0D2EF4F7A909770F5263E|base64
NDQ4NTdDRjE3N0IwRDJFRjRGN0E5MDk3NzBGNTI2M0UNCg==
(上面的值是正确的)


C:\TEMP\M MD5>

(下面这个连续管道操作出来的值就错误的,因为 md5 处理完后非得后面加上个“源”,结果多出的这个 "-" 又被 Base64编辑了:(
(所以,连续管道操作出来的值就是错误的)

C:\TEMP\M MD5>echo Redtek|md5|base64
NDQ4NTdDRjE3N0IwRDJFRjRGN0E5MDk3NzBGNTI2M0UgIC0NCg==
第3楼 ec2049 发表于 2007-01-23 07:46
初级用户 发帖 25 积分 57
谢谢~问题已解决:-)

晕...
http://www.cn-dos.net/forum/viewthread.php?tid=27000

[ Last edited by ec2049 on 2007-1-23 at 08:13 AM ]
第4楼 vkill 发表于 2007-01-23 09:05
金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽
才发现base64这个东西挺好的,呵呵
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023