无忧启动论坛

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

imdisk 命令行用法

[复制链接]
跳转到指定楼层
1#
发表于 2010-3-15 16:16:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
   这是我在我的XP  里面用到IMDISK 批处理
对RAMOS 的系统来说,它是个鸡肋(系统无法分辨出来的内存还是有点用,)

  1. @echo off&title imdisk内存挂卸载 by x9tian&cls&color 0a&setlocal enabledelayedexpansion&if /i not "%temp:~0,1%"=="c" echo.[E] 扩展内存盘&echo.&echo.[Q] 卸载内存盘并还原系统临时文件夹&echo.&set/p mm=  (选择E,Q相应操作)&if /i "!mm!"=="Q" goto 1_
  2. if defined mm if /i "!mm!"=="E" call "%systemdrive%%homepath%\「开始」菜单\内存盘扩容.bat"&exit
  3. echo.输入要创建的RAM卷容量"建议不小于80" (默认单位:M)  如:200&set/p ram=&echo.请输入要挂载的盘符(不输入,回车为智能分配盘符)&set/p dr=  (无须冒号":")
  4. if  /i "%dr: =%"==""  set dr=
  5. ::以上的内容,判定,有无改写临时文件夹默认盘符,是则提供扩容或卸载,未则为用户提供内存分区操作
  6. ::为未指定内存盘符提供智能挂载分配盘符支持
  7. if not defined dr  set dr=#
  8. ::生成虚拟内存盘(NTFS  RAM_TEMP),利用IMDISK支持NTFS直载扩容的特性(其它格式须重新格式化才能使用扩充容量,),在系统开始菜单写入内存盘扩容P处理
  9. for  /f   "delims=" %%i  in ('imdisk -a -s %ram%M -m %dr%: -o rem -p "/fs:ntfs /c/q/y /V:RAM_TEMP"') do ( set vc=%%i
  10. IF /I  "!vc:~0,7!"=="Created"  set vc=!vc:~18,2!&echo.^@echo off^&CLS^&title BY x9tian^&color 0c^&path=%~dp0;%path%^&echo.输入要扩充的内存盘容量^(M^)如:100^&set/p jd=>"%systemdrive%%homepath%\「开始」菜单\内存盘扩容.bat"&echo.imdisk -e -s %%jd%%M -m !vc!>>"%systemdrive%%homepath%\「开始」菜单\内存盘扩容.bat"
  11. )
  12. ::生成系统临时文件夹设定的PECMD配置
  13. (echo.MESS \n您确认把系统临时文件夹和IE临时文件夹设置到==%vc:~0,1%盘==吗?\n如果觉得%vc:~0,1%盘 太小你可以运行「开始」菜单上的"内存盘扩容.bat"\n@设置到%vc:~0,1%盘#YN $yes
  14. echo.FIND $%%YESNO%%=YES,Call SetROP
  15. echo._SUB SetROP
  16. echo.PATH %vc%\TEMP\TEMP
  17. echo.REGI HKCU\Environment\TEMP=%vc%\TEMP\TEMP
  18. echo.REGI HKCU\Environment\TMP=%vc%\TEMP\TEMP
  19. echo.REGI HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Cache=%vc%\\TEMP\\Temporary Internet Files
  20. echo.REGI HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Cache=%vc%\\TEMP\\Temporary Internet Files
  21. echo.ENVI
  22. echo._END)>临时文件到内存盘_%vc:~0,1%盘.ini
  23. ::挂载用户临时文件夹(包括IE)设定
  24. pecmd load  临时文件到内存盘_%vc:~0,1%盘.ini
  25. ::为WIM格式文件自动挂(setup.cmd) 掉供退出操作,方便自动运行后能自动卸载
  26. exit
  27. :1_
  28. @ECHO OFF&PATH=%~DP0;%PATH%
  29. (echo.MESS \n您确认把系统临时文件夹和IE临时文件夹设置到==%systemdrive%盘==吗?\n如果觉得%systemdrive%盘 太小你可以运行「开始」菜单上的"内存盘扩容.bat"\n@设置到%vc:~0,1%盘#YN $yes
  30. echo.FIND $%%YESNO%%=YES,Call SetROP
  31. echo._SUB SetROP
  32. echo.PATH %windir%\temp
  33. echo.REGI HKCU\Environment\TEMP=%windir%\TEMP\
  34. echo.REGI HKCU\Environment\TMP=%windir%\TEMP\
  35. echo.REGI HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Cache=%windir%\TEMP\Temporary Internet Files
  36. echo.REGI HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Cache=%windir%\TEMP\Temporary Internet Files
  37. echo.ENVI
  38. echo._END)>%~n0.ini
  39. pecmd load  %~n0.ini
  40. ::虚拟盘符卸载
  41. FOR /L %%I IN (0,1,10) DO IMDISK -d -m %%I: >nul 2>nul &IMDISK -d -u %%I  >nul 2>nul
  42. ::清除扩容P
  43. del "%systemdrive%%homepath%\「开始」菜单\内存盘扩容.bat" /f /q
  44. ::为WIM格式文件自动挂(setup.cmd) 掉供退出操作,方便自动运行后能自动卸载
  45. exit
复制代码
  

说明:
    imdisk 命令支持须要的组件 imdisk.exe imdik.cpl imdsk.sys imdisk.inf(这个右键安装后可以在%windir%\system32\inf目录找到并删除, 因为我们只要他的注册信息,)(没组件的水区有成品…(⊙_⊙;)
重要注意的一点是: 
  制作WIM格式的,由于WIMNT.EXE的%temp%默认是系统的%temp% 所以重启机时须要再次运行本P处理,持行卸载操作(装了影子系统的可以跳过 比如本人的爱机<( ̄oo, ̄)/
    BUG,如果用户然来将环境变量%temp%  另外指定过非C盘, 会判定为卸载模式,但无伤大雅,(你可以运行下卸载,再挂载)
   其实判定应当改成: if /i not "%temp:~0,1%:"=="%systemdrive%"    (因为我不知道现在的WIN7 是不是还用变量%systemdrive%,反正就这个不是BUG的BUG)
   A:   
     echo.FIND $%%YESNO%%=YES,Call SetROP
    ::%YESNO%为老九的PECMD,内置变量, 在P处理中出现须以对百分号扩充变量详见老九的PECMD说明

  B:
    FOR /L %%I IN (0,1,10) DO IMDISK -d -m %%I: >nul 2>nul &IMDISK -d -u %%I  >nul 2>nul
  ::这条命令我解释下:imdisk -d -m (盘符)  和imdisk -d -u (imdisk赋于盘符的内部ID)在命令行和单独批处理下都能卸载盘符, 但是在这种不算繁索的P处理下却不能卸载成功(这可能是IMDISK命令支持的一个BUG吧), 而上面方式运行却能卸载(IMDISK -d -m %%I: 其实是错误的命令行,可以用其它代替,但必须对虚拟盘进行一次卸载操作,后面的命令才能卸载成功盘符
     注: imdisk 为生成盘赋于内部ID默认为 0-10

   本来想贴个IMDISK 命令行命令帮助出来, 可是google 一下,发现网上有(虽然有几处错误,但还算是能给别人看吧,)  我就懒得贴了(主要是文笔功夫太差<( ̄oo, ̄)/)
   这个是水区成品WIM的下载链接 (注:如果运行出现imdisk not install 表示要注册imdisk.inf) 如果觉得这批处理太扎眼,可以去水区看下简化版的P

[ 本帖最后由 x9tian 于 2010-3-16 13:37 编辑 ]
2#
发表于 2010-3-16 11:17:02 | 只看该作者
学习了!
谢谢楼主!
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-12-3 03:30

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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