20090101 发表于 2018-8-10 10:42:53

搜狗五笔x86精简

本帖最后由 20090101 于 2018-8-10 19:40 编辑

求个批处理:

要求1:
删除C:\Program Files\SogouWBInput\3.1.0.1751\
ImeUtil.exe
py.bin
Resource.dll
SGWbConfig.cupf
SGWbWizard.cupf
SGWbWizardNew.cupf
wb.bin
WbSkin.dat
Plugins还有这个文件夹
以外的所有文件和文件夹.



要求2:
删除C:\Program Files\SogouWBInput\3.1.0.1751\Plugins\
AutoNewWord.dll
ManualNewWord.dll
StatisticsModule.dll
以外的所有文件.



以上就是搜狗五笔必须的文件,也就是最精简的,别问我怎么知道的,我都是一个一个试出来的.

看似一个简单的批处理,我死活就是写不出来,唉,学艺不精呀.


搜狗五笔官方下载地址:
http://wubi.sogou.com/

现已成功,WIN7X86下,安装好官方的搜狗五笔输入法,再运行一下附件的批处理,便得到一个超小的精简版了,感谢所有坛友的努力帮助.

江南一根葱 发表于 2018-8-10 12:05:58

不是很简单么,md一个临时文件夹,copy你这些文件到临时文件夹,
删除整个文件夹,再ren临时文件夹为你这个文件夹名称

简单粗暴

20090101 发表于 2018-8-10 12:07:41

江南一根葱 发表于 2018-8-10 12:05
不是很简单么,md一个临时文件夹,copy你这些文件到临时文件夹,
删除整个文件夹,再ren临时文件夹为你这 ...

我也是这个思路,我就想知道有没有更直接的方法.

江南一根葱 发表于 2018-8-10 12:16:38

20090101 发表于 2018-8-10 12:07
我也是这个思路,我就想知道有没有更直接的方法.

我的思路都比较暴力,

attrib /s 你要保留的文件 +r
del /s /q *.*
attrib /s -r 你要保留的文件,{:1_201:}{:1_201:}

例 D:\test有数个文件,你要保留1.txt
attrib /s D:\test\1.txt +r
del /s /q D:\test\*.*
attrib /s D:\test\1.txt -r

是不是很暴力

holley2008 发表于 2018-8-10 12:20:14

本帖最后由 holley2008 于 2018-8-10 16:22 编辑

要求1:
dir /a-d /s "%ProgramFiles%\SogouWBInput\3.1.0.1751"| findstr /i /v "ImeUtil.exe py.bin Resource.dllSGWbConfig.cupf SGWbWizard.cupf SGWbWizardNew.cupf wb.bin WbSkin.dat" > files.txt
for /f "tokens=4" %%i in (files.txt) do del /f /s /q %%i
要求2类似,未处理其它文件夹:
dir /a-d /s "%ProgramFiles%\SogouWBInput\3.1.0.1751\Plugins"| findstr /i /v "AutoNewWord.dll ManualNewWord.dll StatisticsModule.dll" > files.txt
for /f "tokens=4" %%i in (files.txt) do del /f /s /q %%i

20090101 发表于 2018-8-10 12:45:38

holley2008 发表于 2018-8-10 12:20
要求1:

要求2类似,未处理其它文件夹:

果然高手在民间,我看好你哟

江南一根葱 发表于 2018-8-10 12:51:28

他这个是指定目录生成文件列表,排除一些文件名,生成文件黑名单
根据文件黑名单删除文件

20090101 发表于 2018-8-10 13:04:06

holley2008 发表于 2018-8-10 12:20
要求1:

要求2类似,未处理其它文件夹:

亲测,不成功呢,你再查一下什么原因.

江南一根葱 发表于 2018-8-10 13:05:35

结合一下,暴力+版本

if not exist "%ProgramFiles%\SogouWBInput\3.1.0.1751" exit
cd /d "%ProgramFiles%\SogouWBInput\3.1.0.1751"

for /f %%i in ('dir /s /b ImeUtil.exe py.bin Resource.dllSGWbConfig.cupf SGWbWizard.cupf SGWbWizardNew.cupf wb.bin WbSkin.dat') do(
attrib +r %%i
)
del /s /q *.*
attrib /s /d *.* -r


20090101 发表于 2018-8-10 13:08:04

江南一根葱 发表于 2018-8-10 13:05
结合一下,暴力+版本

if not exist "%ProgramFiles%\SogouWBInput\3.1.0.1751" exit


求个批处理:

要求1:
删除C:\Program Files\SogouWBInput\3.1.0.1751\
ImeUtil.exe
py.bin
Resource.dll
SGWbConfig.cupf
SGWbWizard.cupf
SGWbWizardNew.cupf
wb.bin
WbSkin.dat
Plugins还有这个文件夹
以外的所有文件和文件夹.


要求2:
删除C:\Program Files\SogouWBInput\3.1.0.1751\Plugins\
AutoNewWord.dll
ManualNewWord.dll
StatisticsModule.dll
以外的所有文件.

再更新一下要求.

zlq_hysy 发表于 2018-8-10 13:51:27

如果某些文件被占用,也是删不掉的

holley2008 发表于 2018-8-10 15:58:45

本帖最后由 holley2008 于 2018-8-10 16:45 编辑

20090101 发表于 2018-8-10 12:45
果然高手在民间,我看好你哟

findstr /i /v 将后面的文件匹配不打印到files.txt
dir /a-d /s 该路径下所有子目录及文件你试试加个 /s
我新建目录和文件测试正常,没安装搜狗测试。
如果存在已占用无法删除的情况 试试先做一遍attrib再del

nttwqz 发表于 2018-8-10 15:59:42

@echo off
pushd %ProgramFiles%\SogouWBInput\3.1.0.1751\
if not "%errorlevel%"=="0" echo;目标路径切换失败&pause&exit
set "nodel=ImeUtil.exe py.bin Resource.dll SGWbConfig.cupf SGWbWizard.cupf SGWbWizardNew.cupf wb.bin WbSkin.dat AutoNewWord.dll ManualNewWord.dll StatisticsModule.dll"
for /r %%a in (*.exe) do taskkill /im %%~nxa /f >nul 2>nul
for /f "delims=" %%a in ('dir /ad /b') do if /i not "%%a"=="Plugins" rd /s /q "%%a" 2>nul
for %%a in (%nodel%) do attrib +s +h %%a /s /d>nul
del /s /f /q *.*
for %%a in (%nodel%) do attrib -s -h %%a /s /d>nul
pause

holley2008 发表于 2018-8-10 16:42:54

20090101 发表于 2018-8-10 13:08
求个批处理:

要求1:


要求1:
@echo off
dir /a-d /s "%ProgramFiles%\SogouWBInput\3.1.0.1751"| findstr /i /v "ImeUtil.exe py.bin Resource.dllSGWbConfig.cupf SGWbWizard.cupf SGWbWizardNew.cupf wb.bin WbSkin.dat" > files.txt
for /f "tokens=4" %%i in (files.txt) do del /f /s /q %%i
dir /ad /b /s "%ProgramFiles%\SogouWBInput\3.1.0.1751"| findstr /i /v "Plugins" > folder.txt
for /f "tokens=*" %%j in (folder.txt) do rd /q %%j
要求2:类似。

邪恶海盗 发表于 2018-8-10 20:15:09

DOS下有X狗五笔???

直接用极点五笔不就行了???

hy3312957 发表于 2018-8-10 22:22:08

有没有64位的

holley2008 发表于 2018-8-10 22:26:15

本帖最后由 holley2008 于 2018-8-10 22:35 编辑

@nttwqz 之批处理解析

@echo off
rem 改变当前目录为%ProgramFiles%\SogouWBInput\3.1.0.1751\
pushd %ProgramFiles%\SogouWBInput\3.1.0.1751\
rem 如果目录不存在则退出
if not "%errorlevel%"=="0" echo;目标路径切换失败&pause&exit
rem 设置nodel变量
set "nodel=ImeUtil.exe py.bin Resource.dll SGWbConfig.cupf SGWbWizard.cupf SGWbWizardNew.cupf wb.bin WbSkin.dat AutoNewWord.dll ManualNewWord.dll StatisticsModule.dll"
rem 如果任务管理器中存在当前目录中的exe进程则强制退出
for /r %%a in (*.exe) do taskkill /im %%~nxa /f >nul 2>nul
rem 列出当前目录下所有子目录,如果目录不为"Plugins" 则删除
for /f "delims=" %%a in ('dir /ad /b') do if /i not "%%a"=="Plugins" rd /s /q "%%a" 2>nul
rem 给nodel变量中的所有文件添加系统、隐藏属性
for %%a in (%nodel%) do attrib +s +h %%a /s /d>nul
rem 删除当前目录、子目录下所有文件,默认不会删除隐藏文件
del /s /f /q *.*
rem nodel变量中的所有文件取消系统、隐藏属性
for %%a in (%nodel%) do attrib -s -h %%a /s /d>nul
pause
页: [1]
查看完整版本: 搜狗五笔x86精简