无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5042|回复: 15
打印 上一主题 下一主题

[已解决] PECMD.exe 的FIND和IFEX用法。

[复制链接]
跳转到指定楼层
1#
发表于 2020-10-12 17:12:45 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 2010feifei5612 于 2020-10-13 21:26 编辑

FIND和IFEX不可以套用其它命令吗?
我是要按需创建B盘

我要达到的目的是:
如果内存达到2G及以上,【查找任何盘PETools\PETools.ini文件,匹配到就执行该PETools.ini,否则查找任何盘PETools\*.wim,匹配到就执行%WinDir%\system32\PETools.ini】,否则无操作。


我试了把FORX套进去无效,

有知道怎么写的大神吗?请赐教


来自 13#
发表于 2020-10-13 00:47:32 | 只看该作者
  1. ENVI &&AnyINI=
  2. ENVI &&AnyWIM=0
  3. IFEX MEMA>=2048,
  4. {*
  5.     FORX \PETools\PETools.ini,&&AnyINI,1,EXIT FORX
  6.     FIND $%&&AnyINI%=,
  7.     {*
  8.         FORX \PETools\*.wim,&&AnyWIM,1,
  9.         IFEX $%&&AnyWIM%>0,
  10.         {*
  11.             LOAD X:\Windows\System32\PETools.ini
  12.         }
  13.     }!  
  14.     {*
  15.         LOAD %&&AnyINI%
  16.     }
  17. }
复制代码


※命令及参数为空时,变量返回找到的文件目录个数或命令执行的次数

点评

谢谢大神,测试成功了。  详情 回复 发表于 2020-10-13 09:09
回复

使用道具 举报

2#
发表于 2020-10-12 19:31:40 来自手机 | 只看该作者
贴上你的代码
回复

使用道具 举报

3#
发表于 2020-10-12 19:51:20 | 只看该作者
IFEX MEM > 2048,
{
  ENVI &&PETools=
  FORX \PETools\PETools.ini,&PETools,1,
  {   
    FIND %&PETools%=,
     {
       FORX \PETools\*.wim,MyIni,1,LOAD %WinDir%\system32\PETools.ini
     }!
     {
       LOAD %&PETools%
     }
  }
}

点评

不理解,执行这段代码也没有反应。PETools的变量不是重复了吗?  详情 回复 发表于 2020-10-12 22:39
回复

使用道具 举报

4#
 楼主| 发表于 2020-10-12 22:39:23 | 只看该作者
2012胡言乱语 发表于 2020-10-12 19:51
IFEX MEM > 2048,
{
  ENVI &&PETools=

不理解,执行这段代码也没有反应。PETools的变量不是重复了吗?

点评

没重复 这个不能达到你的要求  详情 回复 发表于 2020-10-12 23:16
回复

使用道具 举报

5#
发表于 2020-10-12 23:09:02 | 只看该作者
本帖最后由 2012胡言乱语 于 2020-10-12 23:18 编辑

上面那个有问题 你用这个试试 应该有用
CALL GHHHHHH
_SUB GHHHHHH
       IFEX MEM > 2048,
       {  
         FORX \PETools\PETools.ini,PETools,1,TEAM LOAD %PETools%|EXIT _SUB
         FORX \PETools\*.wim,PETools,1,LOAD %WinDir%\system32\PETools.ini
        }
_END

//顺方向查找PETools\PETools.ini 有就执行 load 并退出_SUB.
如果没查到PETools\PETools.ini,就运行FORX \PETools\*.wim,PETools,1,LOAD %WinDir%\system32\PETools.ini如果还是没查到PETools\*.wim 就啥都不执行


点评

开始我写的和你这个差不多,就是没有头和尾,第一个没有退出。 IFEX MEM > 2048, { FORX \PETools\PETools.ini,PETools,1,TEAM LOAD %PETools% FORX \PETools\*.wim,PETools,1,LOAD %WinDir%\syste  详情 回复 发表于 2020-10-12 23:54
测试了,也是没有反应。 [attachimg]466687[/attachimg]  详情 回复 发表于 2020-10-12 23:33
回复

使用道具 举报

6#
发表于 2020-10-12 23:16:18 | 只看该作者
2010feifei5612 发表于 2020-10-12 22:39
不理解,执行这段代码也没有反应。PETools的变量不是重复了吗?

没重复 但这个不能达到你的要求
回复

使用道具 举报

7#
 楼主| 发表于 2020-10-12 23:33:18 | 只看该作者
2012胡言乱语 发表于 2020-10-12 23:09
上面那个有问题 你用这个试试 应该有用
CALL GHHHHHH
_SUB GHHHHHH

测试了,也是没有反应。

回复

使用道具 举报

8#
发表于 2020-10-12 23:52:15 | 只看该作者
本帖最后由 2012胡言乱语 于 2020-10-12 23:54 编辑

代码没问题 没用那是你别的地方有问题再查查 我们也不知道PETools.ini里是啥  想干嘛  挂载wim?

点评

外置工具,找PETools.ini,是直接编辑加载;找PETools.wim是创建B盘挂载。  详情 回复 发表于 2020-10-12 23:57
回复

使用道具 举报

9#
 楼主| 发表于 2020-10-12 23:54:11 | 只看该作者
2012胡言乱语 发表于 2020-10-12 23:09
上面那个有问题 你用这个试试 应该有用
CALL GHHHHHH
_SUB GHHHHHH

开始我写的和你这个差不多,就是没有头和尾,第一个没有退出。

IFEX MEM > 2048,
{  
    FORX \PETools\PETools.ini,PETools,1,TEAM LOAD %PETools%
    FORX \PETools\*.wim,PETools,1,LOAD %WinDir%\system32\PETools.ini
}
回复

使用道具 举报

10#
 楼主| 发表于 2020-10-12 23:57:35 | 只看该作者
2012胡言乱语 发表于 2020-10-12 23:52
代码没问题 没用那是你别的地方有问题再查查 我们也不知道PETools.ini里是啥  想干嘛  挂载wim?

外置工具,找PETools.ini,是直接编辑加载;找PETools.wim是创建B盘挂载。
回复

使用道具 举报

11#
发表于 2020-10-13 00:01:34 | 只看该作者
本帖最后由 2012胡言乱语 于 2020-10-13 00:04 编辑

那%WinDir%\system32\PETools.ini里的怎么知道这边查找的是wim在哪里?查找的变量%PETools% PETools.ini里也不知道啊 PETools.ini 你都提前放到%WinDir%\system32\里 我这里找到了 你PETools.ini也不知道挂载哪里啊
回复

使用道具 举报

12#
 楼主| 发表于 2020-10-13 00:34:12 | 只看该作者
只是找其中一个没有问题,两个却不行了。你有更好的办法吗?

我的思路是:内存大于2G时,找到PETools\PETools.ini就加载PETools\PETools.ini,如果没有就找PETools\*.wim文件,找到就通过%WinDir%\system32\PETools.ini创建B盘并挂载,都没找到就什么都不做,在%WinDir%\system32\PETools.ini的代码:
  1. RAMD ImDisk,P25,NTFS,B:,PETools
  2. EXEC =!CMD.EXE /C "md B:\PETools"
  3. FORX !\PETools\PETools.wim,PETools,1,MOUN %PETools%,B:\PETools
  4. LOAD B:\PETools\PETools.ini
复制代码
wim文件里的ini是建立桌面图标用的

回复

使用道具 举报

14#
 楼主| 发表于 2020-10-13 09:09:53 | 只看该作者
本帖最后由 2010feifei5612 于 2020-10-13 11:07 编辑
红毛樱木 发表于 2020-10-13 00:47
※命令及参数为空时,变量返回找到的文件目录个数或命令执行的次数
我试了只有2G内存时(虚拟机),运行不起来了。
把   IFEX MEMA>=2048,   改为   IFEX MEMA>=2047,   就可以。好像是这个 = 号没有起作用,但把 = 号去掉也不行。
就这样用了。还是非常感谢你。


回复

使用道具 举报

15#
 楼主| 发表于 2020-10-13 09:27:35 | 只看该作者
本帖最后由 2010feifei5612 于 2020-10-13 11:05 编辑

谢谢。
回复

使用道具 举报

16#
发表于 2020-10-13 18:34:17 | 只看该作者
原来是虚拟机内存不够啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-17 03:45

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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