帮我写一个win10系统下的bat脚本,修改本地路径下的app.bin文件的第四个字节为0x5A
时间: 2023-04-08 18:05:21 浏览: 163
好的,我可以回答这个问题。以下是一个修改app.bin文件第四个字节为0x5A的bat脚本:
```
@echo off
setlocal EnableDelayedExpansion
set "file_path=C:\path\to\app.bin"
set /a "byte4=0x5A"
set /a "byte_offset=3"
for /f "usebackq delims=" %%a in ("%file_path%") do (
set "line=%%a"
set "byte=!line:~%byte_offset%,1!"
set /a "new_byte=!byte4!<<%byte_offset!*8!|(!byte!&0xFF^0)"
set "new_line=!line:~0,%byte_offset%!!new_byte:~2!!line:~%byte_offset%+1!"
echo !new_line!
) > "%file_path%.new"
move /y "%file_path%.new" "%file_path%" >nul
```
请将 `C:\path\to\app.bin` 替换为你实际的文件路径。这个脚本会将文件中第四个字节替换为0x5A,并保存到同一路径下的 `app.bin.new` 文件中,然后将新文件重命名为 `app.bin`。
相关问题
帮我写一个bat脚本,修改当前路径下的app.bin文件的第四个字节为0x5A
好的,以下是修改当前路径下的app.bin文件的第四个字节为0x5A的bat脚本:
```
@echo off
setlocal EnableDelayedExpansion
set "file=app.bin"
set "byte=0x5A"
set /a "pos=4"
set /a "pos-=1"
for /f "tokens=1* delims=:" %%a in ('findstr /n "^" "%file%"') do (
if %%a equ %pos% (
set "line=%%b"
set "line=!line:~0,2!%byte%!line:~4!"
echo !line!>>"%file%.new"
) else (
echo %%b>>"%file%.new"
)
)
move /y "%file%.new" "%file%" >nul
```
请注意,这只是一个示例脚本,可能需要根据实际情况进行修改。
写一个bat脚本,修改当前路径下的 app.bin 文件(该文件是二进制文件)的第4个字节为0x1F
可以使用以下命令来修改当前路径下的 app.bin 文件的第4个字节为0x1F:
```
echo 0x1F | dd conv=notrunc bs=1 seek=3 of=app.bin
```
这个命令会将0x1F写入到 app.bin 文件的第4个字节位置,同时保留其它字节不变。注意,这个命令需要在 Linux 或 macOS 系统上运行,如果在 Windows 上运行需要安装 Cygwin 或 WSL。
阅读全文