找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 27550|回复: 10

[其他] [已解决]如何复制文件16进制字节再命名到文件里?

[复制链接]
发表于 2019-11-11 21:19:08 | 显示全部楼层 |阅读模式
本帖最后由 a574045075 于 2019-11-12 12:45 编辑


用批处理怎么把title.tmd文件的1E7位置的值替换到00000000.app里(例如1E7位置是09,00000000.app变成00000009.app,1E7位置是23,00000000.app变成00000023.app,要怎么做呢?
发表于 2019-11-12 08:41:40 | 显示全部楼层
本帖最后由 ivor 于 2019-11-12 12:04 编辑

追加到00000000.app?还是替换相同的位置。

**************************************

最终答案
  1. @Powershell "$byte = [System.IO.File]::ReadAllBytes('title.tmd')[487];Move-Item -Path '00000000.app' -Destination ('000000{0:x2}.app' -f $byte) -Verbose"
  2. pause
复制代码
 楼主| 发表于 2019-11-12 09:05:25 | 显示全部楼层
本帖最后由 a574045075 于 2019-11-12 09:14 编辑

回复 2# ivor


    把1E7位置的值替换到00000000.app里,使它变成00000009.app,不是追加,但是1E7位置不一定是09,可能是01 14 23或者其它.
发表于 2019-11-12 09:17:36 | 显示全部楼层
本帖最后由 ivor 于 2019-11-12 09:19 编辑

保存为批处理运行
  1. <# :
  2. @Powershell "& {[ScriptBlock]::Create((gc '%~f0' -raw)).Invoke()}" & pause & goto :eof
  3. #>

  4. $byte1 = [System.IO.File]::ReadAllBytes("title.tmd")
  5. $byte2 = [System.IO.File]::ReadAllBytes("00000000.app")
  6. 'title.tmd: {0}  ===>  00000000.app:{1}' -f $byte1[487],$byte2[487]
  7. $byte2[487] = $byte1[487]
  8. [System.IO.File]::WriteAllBytes("00000009.app",$byte2)
  9. 'save as file:00000009.app'
复制代码
 楼主| 发表于 2019-11-12 09:18:24 | 显示全部楼层
回复 4# ivor


    好的 我试试
 楼主| 发表于 2019-11-12 09:30:14 | 显示全部楼层
本帖最后由 a574045075 于 2019-11-12 09:33 编辑

回复 4# ivor


    不好意思啊,我问题可能说的不清楚,我的重新编辑一下,抱歉. 你重新看看我1楼的问题.
发表于 2019-11-12 09:39:48 | 显示全部楼层
  1. <# :
  2. @Powershell "& {[ScriptBlock]::Create((gc '%~f0' -raw)).Invoke()}" & pause & goto :eof
  3. #>

  4. $byte = [System.IO.File]::ReadAllBytes("title.tmd")[487]
  5. Copy-Item -Path "00000000.app" -Destination ("000000{0:x}.app" -f $byte) -Verbose
复制代码

评分

参与人数 1技术 +1 收起 理由
a574045075 + 1 谢谢了

查看全部评分

 楼主| 发表于 2019-11-12 09:54:07 | 显示全部楼层
回复 7# ivor


    为什么安装PowerShell后还是提示'Powershell' 不是内部或外部命令,也不是可运行的程序?
发表于 2019-11-12 10:11:33 | 显示全部楼层
回复 8# a574045075


    XP系统吗?把PowerShell的路径加到PATH环境变量里面再试试
 楼主| 发表于 2019-11-12 10:34:46 | 显示全部楼层
回复 9# Batcher


    我是WIN764系统,不过我重新安装系统了.
发表于 2019-11-13 00:11:13 | 显示全部楼层
回复 10# a574045075


    Win7是自带PowerShell的,猜测你的PATH环境变量被修改错了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 12:03 , Processed in 0.020125 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表