sairen139 发表于 2020-1-4 09:33:06

P驱完全镜像主动回收空闲内存的bat的设置内容和方法:

本帖最后由 sairen139 于 2023-3-24 15:33 编辑

P驱完全镜像主动回收空闲内存的bat的设置内容和方法:
@echo off
set dd=C:
fsutil volume diskfree %dd% >%dd%\size.txt
ping -n 1 127.0.0.1>nul
for /f "tokens=2 delims=:" %%i in (%dd%\size.txt) do (set size=%%i)
fsutil file createnew %dd%\test.zip %size%
del %dd%\test.zip /f /q
exit

sairen139 发表于 2020-1-4 09:34:23

本帖最后由 sairen139 于 2023-3-25 18:43 编辑

还可以加个vbs静默运行
createobject("wscript.shell").run

"filldiskC.bat",0

如果你的ramos内存系统精简了运行vbs的组件,也不想用cc.exe还可以用hr.exe来完全隐藏bat批处理的运行。只要开机启动脚本添加hr.exe再另一个参数框里填入bat批处理的具体路径文件名即可!如下图所示:

luohanqing 发表于 2020-1-4 09:56:53

Win10x64的Ramos系统,P驱双镜像的=占用+空闲,

sairen139 发表于 2020-1-4 10:10:47

该bat是群里的浩还是心心搞出来的,有点记不清楚了。在此感谢群友们!

qq136534822 发表于 2020-1-4 10:49:25

{:1_186:}

qq136534822 发表于 2020-1-4 10:49:43

{:1_186:}

promrhxq 发表于 2020-1-4 14:10:46

方法非常好,细节有点少,期待高手出个教程

土豆蓝 发表于 2020-1-4 14:47:30

@echo off&setlocal enabledelayedexpansion ::不适用于智能镜像,仅适用于完全镜像,感谢双心版主提供帮助 set dd=C: ::设置要回收的盘符如C: for /f "tokens=1 delims= " %%i in ('wmic logicaldisk where "caption='%dd%'" get freespace') do (   set /a n+=1    if !n!==2 (set size=%%i) else echo >nul ) fsutil file createnew %dd%\test.zip %size%del /f /q %dd%\test.zip exit

土豆蓝 发表于 2020-1-4 14:48:56

手机回复,此p更完善一些。

wanghh 发表于 2020-1-4 19:46:05

set dd=C: ::设置要回收的盘符如C: for /f "tokens=1 delims= " %%i in ('wmic logicaldisk where "caption='%dd%'" get freespace') do (   set /a n+=1    if !n!==2 (set size=%%i) else echo >nul ) fsutil file createnew %dd%\test.zip %size%del /f /q %dd%\test.zip exit

董大 发表于 2020-1-6 19:42:05

路过点赞支持一下,太难了对于小白

nsh0805 发表于 2020-1-6 21:13:56

谢谢分享,先尝试下

qq52016000 发表于 2020-1-8 06:52:35

dos时代最方便的系统编程语言,几十年里°不见消亡,有时间要好好学习一下

qq812575 发表于 2020-4-15 03:06:06

感谢分享,暂时还不明白完全模式回收内存什么意义?

sairen139 发表于 2021-3-7 00:55:56

本帖最后由 sairen139 于 2022-3-31 10:33 编辑

qq812575 发表于 2020-4-15 03:06
感谢分享,暂时还不明白完全模式回收内存什么意义?
意义在于进ramos桌面后立刻把被浪费的内存都腾空出来,如果你的内存条容量很大的话其实不用搞这种完全镜像模式回收内存。内存大ramos即便是完全镜像也可以随便用不用管内存占用这种无关大局的小事!

由本论坛yiyu2012改进的更完美的批处理如下
@echo off
setlocal EnableDelayedExpansion
:: 获取管理员权限
set _Args=%*
if "%~1" NEQ "" (
set _Args=%_Args:"=%
)
fltmc 1>nul 2>nul || (
cd /d "%~dp0"
cmd /u /c echo Set UAC = CreateObject^("Shell.Application"^) : UAC.ShellExecute "cmd.exe", "/k cd ""%~dp0"" && ""%~dpnx0"" ""%_Args%""", "", "runas", 1 > "%temp%\GetAdmin.vbs"
"%temp%\GetAdmin.vbs"
del /f /q "%temp%\GetAdmin.vbs" 1>nul 2>nul
exit
)

cd /d "%~dp0"
set "str=U O P R W V C"
echo 开始释放内存盘%str%内存
for %%a in (%str%) do (
set ckd=%%a:
set dd=0
if exist !ckd! set dd=!ckd!
call :filldisk
)
echo.&echo 操作完成!
pause>nul
exit


:filldisk
if !dd!==0 exit /b
echo.&echo 正在释放内存盘!dd!内存...
del !dd!\test*.zip /f 1>nul 2>nul
for /f "tokens=3 delims=:" %%i in ('bootmode !dd!^|find /i "FreeSpace"') do set size=%%i
set /a n=!size!/1024
set /a nn=n+1
set /a m=!size!-n*1024-100
set /a l=m*1024*1024
set rt=0
fsutil file createnew !dd!\test_!nn!.zip !l! 1>nul 2>nul
:ctt
set /a rt+=1
fsutil file createnew !dd!\test_!rt!.zip 1073741824 1>nul 2>nul
if !rt! LSS !n! goto :ctt
del !dd!\test*.zip /f 1>nul 2>nul
exit /b





cntvic 发表于 2023-12-17 15:12:29

感谢分享

zzzlllxyt 发表于 2023-12-17 17:27:58

路过学习

yyz2191958 发表于 2023-12-17 17:52:57

学习学习

cntvic 发表于 2024-1-1 10:07:46

感谢分享
页: [1]
查看完整版本: P驱完全镜像主动回收空闲内存的bat的设置内容和方法: