paragon extfs可以很好地在windows下面读写ext4分区里面的文件啊?你的意思是不要这样子的paragon extfs,读取一些uuid啥的? 我更倾向于使用 开源 命令行 软件。没有就自己写。 里面的很多功能也是在测试,为以后grub2开发做准备 (比如写mbr, pbr)。 |
wintoflash 发表于 2022-1-8 16:01 测试了新版,cmd编码没有问题了。可以正常显示。 我写这个程序主要是想在windows下提取我的ext4分区里面的文件。其他功能都是顺手加上的。 paragon extfs可以很好地在windows下面读写ext4分区里面的文件啊?你的意思是不要这样子的paragon extfs,读取一些uuid啥的? 很多功能我也只是在胡乱地尝试,我没有什么明确的目标和需求,等你以后完工后希望来个详细的readme.txt+用法demo。 |
liuzhaoyzz 发表于 2022-1-8 10:29 现在修复了。退出时会恢复原来的代码页。 当然编码的问题也没有最终解决。 因为 GRUB2 内部都是处理 UTF-8 字符串的,所以要转成 UTF-8 代码页,否则没办法显示非 ASCII 文件名。 这样就带来另一个问题:cmd 命令行字符串的编码是未知的 (一般不是 UTF-8),所以目前命令行不支持非 ASCII 路径。 目前程序的一些功能还没有写,因此我暂时没有解决这方面的问题。 在我的计划中,我是准备集成 Lua 的,这样用户可以用 Lua 脚本处理磁盘分区与文件,这时候只要保证 Lua 脚本是 UTF-8 编码的就好了。 probe OPTIONS [DISK] 正确命令应该是 probe --fsuuid (hdx,y) probe --bus (hdx) 这样。如果不加磁盘/分区参数,就显示所有磁盘/分区的。 好像参数有点问题啊?disk用什么表示的?f:这样子的windows表示方法不行吗? 为什么我不采用 Windows 式盘符?因为有的分区不一定有盘符(ESP)。有的系统(比如XP)不支持一些分区表 (GPT)。 我写这个程序主要是想在windows下提取我的ext4分区里面的文件。其他功能都是顺手加上的。 哦,试了下,disk应该用hd0这样子的,问题是diskfire_x64.exe probe提示error: missing arguments. diskfire_x64.exe probe hd0,为啥还显示出了hd1? 这两句都有语法错误。你要 probe 这个磁盘的具体什么信息? 我之所以不想一次性打印所有信息,就是为了将来支持 Lua 脚本后,可以更方便地让用户自己组织输出形式。 3、hd2是vhd,似乎不能获取uuid? hd2 不是一个带有文件系统的分区。一个分区应该是 (hd2,x) 这种形式。 我故意用 --fsuuid 参数而不是 --uuid,就是想提醒用户,这个 UUID 是与文件系统相关的。 -------------- 总之,这个程序我还没有写完,目前功能仅供参考,以后不保证会保持同样的形式提供这些功能。 |
wintoflash 发表于 2022-1-7 19:38 看样子,你又有作品了! |
这种?把grub2部分功能弄到windows下的效果。 |
fuldho 发表于 2021-2-26 13:42 感谢! |
liuzhaoyzz 发表于 2021-2-19 14:04 autoit3 从0x8028开始,32个字节都是卷标 $hfile=FileOpen("grlb2.iso",16) $sText=FileRead($hFile) $jb=BinaryToString(BinaryMid($sText, 32809, 32),1) MsgBox(0,"卷标",$jb) |
pecmd 已经具备 简单的解析类语言的特性,应该重新 统一规范指令语法。这种脚本解析类语言 是未来趋势. |
527104427 发表于 2021-2-25 20:58 pecmd太复杂了,我看着就头大,玩不转,只有你们这些高人才行。 |
不太清楚,我也是想知道他怎么打包的。 |
527104427 发表于 2021-2-25 12:03 试过了,是对的。 5大辛苦了! |
本帖最后由 窄口牛 于 2021-2-25 09:51 编辑
自动的很难没有问题。 |
这个版本,试了下,结果是正确的了!感谢5大! |
conlin888 发表于 2021-2-24 16:29 挂载的方案,不考虑,因为需要驱动加持,不方便。 |
看来还是挂载靠谱些 PECMD脚本: //PECMD会自动安装Imdisk set &file=fossapup64-9.5.iso fdrv *idlec &pf=*: mstr * &pf=<1>&pf ramd imdisk* -a -m %&pf% -f %&file% fdrv *vol &vol=%&pf% mess. %&vol% ramd imdisk* -D -m %&pf% |
liuzhaoyzz 发表于 2021-2-24 15:16 Linux是utf8,批处理是ansi,加一句转码语句。 |
liuzhaoyzz 发表于 2021-2-24 15:30 结果有差别吗? |
527104427 发表于 2021-2-24 15:39 清华大学开源软件镜像站 | Tsinghua Open Source Mirror https://mirrors.tuna.tsinghua.edu.cn/puppy/puppy-fossa/ fossapup64-9.5.iso MD5:6a45e7a305b7d3172ebd9eab5ca460e4 fossapup64-9.5.iso |
窄口牛 发表于 2021-2-24 07:55 你误会了,哪里有linux发行版强行要求固定卷标的???是通过卷标定位光盘。 |
527104427 发表于 2021-2-24 00:21 不对啊?怎么是乱码? ?剏?????????????? CDlabel=?剏?????????????? 请按任意键继续. . . @echo off set "ChkMbrPbr=%~sdp0ChkMbrPbr_x86.exe" for /f %%i in ('%ChkMbrPbr% -ChkISOVol "E:\linux\puppy\fossapup64-9.5.iso"') do set "CDlabel=%%i" echo CDlabel=%CDlabel% pause |
隔壁论坛有人探讨无gui运行bug10,你这一段儿鼓捣这么多自动的东西,下一步可以不要任何gui了。 |
本帖最后由 窄口牛 于 2021-2-24 08:01 编辑 不是所有的Linux启动都与卷标有关,个别的一部分,确实有要求媒体必须固定卷标。这个确实有点意思,临时修改卷标名称,以启动不同的在优盘里的Linux系统?这种垃圾限制导致你把它解开在fat分区,都通过菜单无法启动,本来就不需要移动媒体了的,你还得搞个优盘看它到底需要什么条件导致,efi启动还必须烧录优盘。 |
本帖最后由 dos时代菜鸟 于 2021-2-22 19:00 编辑 我在 pecmd 的包里找到了个这,编了个批处理,或许。。。。。哈哈哈 中文卷标 支持不了。 |
liuzhaoyzz 发表于 2021-2-20 09:54 有道理 |
本帖最后由 dos时代菜鸟 于 2021-2-20 09:33 编辑 liuzhaoyzz 发表于 2021-2-20 09:29 |
捕获.PNG (15.64 KB, 下载次数: 135)
Powered by Discuz! X3.3
© 2001-2017 Comsenz Inc.