标题: [文件操作] [纯批处理压缩软件][持续更新][已更新至1.0.0015]Hope Cab [打印本页]
作者: HOPE2021 时间: 2021-8-20 17:14 标题: [纯批处理压缩软件][持续更新][已更新至1.0.0015]Hope Cab
本帖最后由 HOPE2021 于 2021-8-23 21:34 编辑
文件太大,使用了压缩代码,以下是自解压程序:
代码[有冗余,请指正]:- @echo off
- (
- echo.-----BEGIN CERTIFICATE-----
- echo.UEsDBBQAAAAIAOuIFFMyElVG2QkAAMcwAAAMAAAASG9wZSBDYWIuYmF07Rr/TxvX
- echo./dcRif/h1ZIrqPyFc5qwuHOUwmCVBvuB0lVTUtBhn8Mp9p17d05gmvK/lK4tC5qK
- echo.jc0320DA4YshYGzXdCTapnRKpkWkC1kTGpJq793duy/2nWeDk6xVHhJ+fu/z/dv7
- echo.PN+do7yDLGD9fvAm6GZ9FGhnGTf8F+A9hOvncPHcr1iBBe426iLNNJ5oPOF22+Xx
- echo.W4rjaZaxv9yBZGh4B7zHhqCs5AA4L4sBCEeLo6WlhfhIL2U7Gxrm6IuDQiWidR+y
- echo.lE3tzUARALhaXC12+I+QpWe5kMMYjFDB0OTN9qCPIE65MIqI9CHJMTRz0Q2EQZoH
- echo.XjYYCgsUB0Ice5EjgwCuwalAeQXKBwaGIQCmHyCvAJLxAZqB8AwpQOORASBwFJxS
- echo.vAN8wJBhYZDl6N9DTI6CVHxhL4ICLAdE1j6aFzh6ICwt+iUJMOMmCEUywyBEcgLc
- echo.oTiK9TeDK3QgAInx4YAAGQOeugw3gJe+TAdEYbwcHaSRHDzJiMx4m7gu4g1QIGQX
- echo.OXMsT3nDSCUYlJA4CJJDdDAcBNSQQDECCLE8Tw8EKBBmfNAYCAKqK1l57svpu+7I
- echo.XHJ5/ZvE04mN7H7mdvFg58nq6NTo7M2Zp8nMxneFZOTTxB8dq/c2Y3N/zuyujk4e
- echo.rC3tFKZjxeXEfmws+llkDiE2JfaX/1HMrm7Obkbnp4rNttRY5nY8tb218CSeXnqY
- echo.WUyOZzcyi8Xl6JJNZB0dSY0VdqdGF9eye/NrU5ObX6R3EcbOg9ijiY3J1Xh6+d/r
- echo.f3PoI7ebhIbqDEvmqBRsdR1idOF0b2jwDnpD4O2TreKcDUDf+lvEeYAXP0joHndb
- echo.FyBOoa8CLUDb49xEK6i8OEDVI2oybhmO2hlEo8art26VLfbb7UfgYMygnEM/HBE4
- echo.jsSi32ggFuo3RySi2u4ILEyWDeyExvFZGLlX2eyvhy8Ueg50bGjXjuGLSETjAZFa
- echo.N3mJAr9jwxzoov0UQDyO54tIRPNFUaKD5GmKc5SsSl9qZmFiKDGPS9bq4wtzdx/D
- echo.F/9neVEfQ6nLehb9xzBUNVXweHYyK+RGbkcDMQjBZgYQrlYHAZwMcIGzgAkH4Ibc
- echo.gKLTUDqbpJl8NJ05eVqBxIdSb9kp1C4eU70sG+hvI7l+TEFa7qQDFP8u4+tkA7Bn
- echo.UHRFE54SYM8VDMJOxNPBcay4+z5cdIaU9Z8hdfvO9p0FeFPe6Sc9VnnqvtpiI6w6
- echo.0rQfOGlgsSrAVovHY3nPAprQLjZ3xTa3QUNO1qWLZqiSDZlSX1N7XxXNaCX4kq60
- echo.r7QtrUGeV9O8Kn2rXZXEqIXtM+ph++rQxBq1r1pZqupky4xZv8a2r6Sz7Wu2gQq9
- echo.rdLXqrJU7nBrihEAcgtTo0jY6QM3sH7AI4cHKWuNRJQUSm1MbNSISzjA9I3MY0Ny
- echo.mZVcYv5B4vv8bjfthY5l/QIMnB4YJh/SjI+9wgNor2fXH2Sz2zPr363uJX+wFb+Y
- echo.KKLuYzOd/CGeRsvO1B30kSskx2OfL+zVlkQAuBxARE9MP0Y0jYEQhMQRiTN7O7kf
- echo./8yGptMPM6nVe1uLbpOKgWpapx2Vx99Auzuh4OjTGBjRi25mnqfuZG66tRvaeadd
- echo.c0IgjJXxnVlb7Glkb7KAJEwdZLPRv+w80VHG/EWk7D9z15A+8TSCXzqcWLaNP1sY
- echo.vfn1VzNLhzo0WVqJFzbB0qFtfi1XiCYQEvJEPD37aGfWYSbwwvPVezbEMzWG/O6g
- echo.GRqREcldE1cgDVs+mytsLV5PFYv5b6dGK2iPaTgxaoVtMyo7I7k7mcWtB6ZsYMxO
- echo.Faf/g82Wvy9bIp52RhNI+3x2/qvph4n9zMrqWGpl6nD2RmlMYddEEysHU8XYo+wn
- echo.2VitoXlSDc30/GLSTFoEg/al4Nz6e2orv6sN6cmD7ULuWno7l8j+ySxo9RTFsO2x
- echo.S6e5NnChsLxwzAjuqRDBSA3jCFZEgUhIqWR26bAusYo1EhER0vVsZA8i5pfyu7GR
- echo.2F0kUvbG1ogtM5NfuvmvXAFSKEx+uTY38bzamEckthbj6fXv81kc+/EUDuCFb23o
- echo.DEA8YndjI4VdcaOXCobgTpV50SMGvpITboWECZAxgFEKKHbXJgGqtWhXXsnfx0aM
- echo.pz+dfckZIlX/l5wbHfbjV/IO0zyQVIqn4pGVcSl2XmRZhsxqLcMddqPqK63+uANK
- echo.9O7K/fFY4uuJePJZciN74HBUTSREhnlKvUtJ1y58U2pG/4yvLJ0W/IwAHTnmcD0q
- echo.nHLRMobsUCA7hgSO9AqNJ3TiwK8KL819a0Bz3XKply28OGDF8Pho9Oi31NsgTg6R
- echo.uORVFdb9ltOjkLKotPDMbfFYLcq+ii4fQtpdmaRX3b1qf7viNdFrtQCG+hhYHF5y
- echo.QGf4fpcKTg3BCIRIWCSIJG0wrKBsyiytJTdOMYjUdgx1pW7TwFE5aNYwYXEpSF6i
- echo.oKjA6UN3HXgBu8TDq5mHaDlz5hRBnHa1trae1kuqkaxCmKfGgIokFZJrQMEEE2sz
- echo.n79Rc5YYpoBblwMKOS21zb/G1pHBEvu57djdwm5sXaps8fgbpjiGEugFKPvlQ/Wz
- echo.PjJlrXFNex0EP+kgUKrnkWqfcoQZVz9lGyPgw8xTTsu8NOIwUfttaUXTeEjVUyON
- echo.Oq9LBa2ucIo8DUunuIND6ULl3Cnfw6orieX1KUQ1Ye2jOeAcAGfPAg1GWZxWn4gq
- echo.fc2qLhWlJYWZuFZVejr9OrVUYmXiilmpSlKvvNT7R2NgHxUoF83rk9E4ioG7Xp/1
- echo.glaoC7+EWhIXCCkaSqtNN3uZMkfSOF6EkXB+HGWj9tPjdR68zoOfUh6oVwrDMwwf
- echo.n3U4XGRORqeLajm57RoKoecEamjY/e63ZMuX5wEKLAVSum8fLZSO46sX4p0GvdFq
- echo.qFOvLWpoUfVtIvwiEV/p5Z+6Dynn2pW2r4cKgneAYTNY6mj0zNSueWiqOOgPnTT0
- echo.rMVpkaNAPG/Qw9kAdRmWQEKOgHNlXPCPGEbAktko1o8BS9FfmB7ul6+HpjHXKqLt
- echo.1/WtP565r2oVUY6a2jTRsjmKKip+o9LXGGhTfpUxuW2U+kdz0tUWanqONan2iuTD
- echo.G8pvXo3yrwxG9iz5Yczgl68ySfHdvEY5NZxqsqKhOm1dJYq0dYHzbQGSucQD1Dfy
- echo.4psUfhZ2oAFgtdLoyX4TYSNsVqIZ+FiAK7GWHaLbOxwqNRFaApbzvdSQ8JGoKi+9
- echo.KvK+wHmsV4lfyKeCwotUefXSQYqzigwRUg8lhDnm19Swp8WIdcmLLDoZSl9yUU4S
- echo.r0bGTx6/2j9LuUDgyEN5JH/kYSjQq/2z6HxnHISNYi1nyuu4dBvSqvO/DuoXPSzm
- echo.WjSUv4FVWnf0r2eJt8UrOjr/BVBLAQIUABQAAAAIAOuIFFMyElVG2QkAAMcwAAAM
- echo.AAAAAAAAAAAAIAAAAAAAAABIb3BlIENhYi5iYXRQSwUGAAAAAAEAAQA6AAAAAwoA
- echo.AAAA
- echo.-----END CERTIFICATE-----
- ) > "Hope Cab.Zip"
- if not exist "Hope Cab.Zip" %0
- Certutil -decode -f "Hope Cab.Zip" "Hope Cab.Zip" > nul
- if not exist "Hope Cab.Zip" %0
- exit
复制代码
_____更新日志________________________________________________________________
版本1.0.0001 在4楼
- 功能:压缩一个文件或一个目录为.Cab文件,解压.Cab文件
版本1.0.0002 在6楼
- 新增功能:目录的前进与后退
版本1.0.0003 在7楼
- 新增功能:切换磁盘功能
版本1.0.0004 在9楼
- 新增功能:增加删除功能[链接已失效]
版本1.0.0009 在27楼
- 新增功能:增加自定义解压功能以及打开文件功能,概述将此软件描述为:命令行压缩文件资源管理器
版本1.0.0012 在43楼
- 新增功能:增加搜索功能
版本1.0.0013 在49楼
- 新增功能:增加更新功能
版本1.0.0014 在52楼
- 改进功能:更新
_____通知与指南______________________________________________________________
1. 键入H以查看帮助.
2.如有建议,请尽快恢复.
作者: cmd1152 时间: 2021-8-20 17:20
本帖最后由 cmd1152 于 2021-8-20 17:23 编辑
Zip不能用Certutil,可能会损坏
作者: HOPE2021 时间: 2021-8-20 17:21
回复 2# cmd1152
那我发到您的网盘?
作者: HOPE2021 时间: 2021-8-20 17:23
本帖最后由 HOPE2021 于 2021-8-20 19:30 编辑
回复 3# HOPE2021
下载链接:文件区\Hope Cab.zip
作者: cmd1152 时间: 2021-8-20 17:23
回复 4# HOPE2021
Ok
作者: HOPE2021 时间: 2021-8-20 19:07
本帖最后由 HOPE2021 于 2021-8-20 19:31 编辑
回复 1# HOPE2021
版本1.0.0002
下载链接:文件区\Hope Cab[Version1.0.0002].rar
下载链接2:https://share.weiyun.com/9HmCroJr
作者: HOPE2021 时间: 2021-8-20 19:26
回复 6# HOPE2021
版本1.0.0003
下载链接:https://share.weiyun.com/gIYBp5dY
下载链接2:文件区\Hope Cab [ Version 1.0.0003 ].rar
作者: cmd1152 时间: 2021-8-20 19:38
回复 6# HOPE2021
合作吗?
作者: cmd1152 时间: 2021-8-20 20:03
增加删除功能
Hope Cab [ Version 1.0.0004 ].zip
作者: HOPE2021 时间: 2021-8-20 20:07
回复 9# cmd1152
代码缩进以及版本号...
变量名称要有意义...
作者: cmd1152 时间: 2021-8-20 20:08
回复 10# HOPE2021
更改版本号完成
作者: HOPE2021 时间: 2021-8-20 20:08
本帖最后由 HOPE2021 于 2021-8-20 20:09 编辑
变量名称要有意义,不要是字符的随机组合或拼音首字母...
作者: cmd1152 时间: 2021-8-20 20:20
回复 12# HOPE2021
不是随机,你翻译一下
作者: HOPE2021 时间: 2021-8-20 20:22
回复 13# cmd1152
缩进要用Tab键...
作者: cmd1152 时间: 2021-8-20 20:22
回复 14# HOPE2021
什么意思
作者: cmd1152 时间: 2021-8-20 20:23
更新更新
Hope Cab [ Version 1.0.0005 ].zip
作者: HOPE2021 时间: 2021-8-20 20:28
回复 16# cmd1152
缩进请按键盘上的Tab键,打那么多空格很累的..
不过变量有实际含义了...
作者: cmd1152 时间: 2021-8-20 20:32
回复 17# HOPE2021
我用论坛的BatProject写的
作者: cmd1152 时间: 2021-8-20 20:34
本帖最后由 cmd1152 于 2021-8-20 20:35 编辑
回复 17# HOPE2021
非常好用
作者: cmd1152 时间: 2021-8-20 21:30
1.0.0006第一次使用会出错,1.0.0066增加版权保护
文件区\Hope Cab [ Version 1.0.0006 ].zip
作者: cmd1152 时间: 2021-8-20 21:31
版权冲突解决方法:运行 文件区\1.0.0006版权冲突解决.exe
作者: cmd1152 时间: 2021-8-20 21:37
优化
文件区\Hope Cab [ Version 1.0.0007 ].zip
作者: HOPE2021 时间: 2021-8-20 21:46
回复 22# cmd1152
为什么要加壳?
作者: cmd1152 时间: 2021-8-20 21:59
关闭版权保护功能
文件区\Hope Cab [ Version 1.0.0008 ].zip
作者: cmd1152 时间: 2021-8-20 22:00
回复 23# HOPE2021
因为要版权保护
作者: cmd1152 时间: 2021-8-20 22:01
回复 23# HOPE2021
取消版权保护的原因:疯狂提示 版权冲突。 !!!
作者: HOPE2021 时间: 2021-8-21 10:23
回复 24# cmd1152
版本1.0.0009
下载链接:https://share.weiyun.com/AlnHHtDp
下载链接2:文件区\Hope Cab [ Version 1.0.0009 ].rar
作者: cmd1152 时间: 2021-8-21 10:47
回复 27# HOPE2021
温馨提示:echo显示的字符串达到右边边框会换行
作者: HOPE2021 时间: 2021-8-21 10:48
回复 28# cmd1152
哪里到达边框了?请指明...
作者: cmd1152 时间: 2021-8-21 10:51
本帖最后由 cmd1152 于 2021-8-21 10:53 编辑
版本1.0.0020
下载链接:文件区\Hope Cab [ Version 1.0.0010 ].zip
作者: cmd1152 时间: 2021-8-21 10:53
回复 29# HOPE2021
:Line的call :Type "--------------------------------------------------------------------------------------------------------------------------------"
作者: HOPE2021 时间: 2021-8-21 11:00
回复 31# cmd1152
Set /p 不会换行的...
Set /p 换行只有两种情况:
1. 字符串长度超过Mode设定的Cols
2. 人工echo.
作者: cmd1152 时间: 2021-8-21 11:25
回复 32# HOPE2021
不要用echo.,这会让批处理的速度慢一点
作者: HOPE2021 时间: 2021-8-21 11:26
回复 33# cmd1152
仅仅是帮助信息而已...
作者: cmd1152 时间: 2021-8-21 11:26
回复 32# HOPE2021
版本1.0.0011
下载链接:文件区\Hope Cab [ Version 1.0.0011 ].zip
作者: cmd1152 时间: 2021-8-21 11:30
回复 34# HOPE2021
.......
作者: cmd1152 时间: 2021-8-21 12:20
回复 32# HOPE2021
下面这几句- echo;Warning: this computer program is protected by copyright law and international treaties. Unauthorized reproduction or distribut-
- echo;ion of this program ^(or any part thereof^) will result in severe civil and criminal sanctions, and will be prosecuted to the max-
- echo;imum extent possible under the law.
- echo;
- echo;警告:本计算机程序受著作权法和国际条约保护.如未经授权而擅自复制或传播本程序^(或其中任何部分^), 将受到严厉的民事及刑事制裁, 并将在法
- echo;律许可范围内受到最大程度的起诉
复制代码
作者: cmd1152 时间: 2021-8-21 12:31
本帖最后由 cmd1152 于 2021-8-21 12:56 编辑
回复 1# HOPE2021
我建议你加个跳转,像这样点击文字就可以跳转到指定楼层:
1楼
19楼
41楼(跳转制作方法的链接)
作者: HOPE2021 时间: 2021-8-21 12:46
回复 38# cmd1152
怎样制作跳转?我这里没有...
作者: HOPE2021 时间: 2021-8-21 12:47
回复 39# HOPE2021
哦,我看见您的帖子了...
作者: cmd1152 时间: 2021-8-21 12:49
跳转制作方法
作者: cmd1152 时间: 2021-8-21 12:57
本帖最后由 cmd1152 于 2021-8-21 13:00 编辑
回复 40# HOPE2021
[谢谢你的评分]
作者: HOPE2021 时间: 2021-8-21 13:05
回复 35# cmd1152
版本1.0.0012
下载链接:https://share.weiyun.com/bdxhlDW7
下载链接2:文件区\Hope Cab [ Version 1.0.0012 ].rar
作者: zz100001 时间: 2021-8-23 00:29
勇气可嘉,期待改进!
看了下你们这个工具,有以下建议:
自定义的命令格式很诡异,跟常用的方式差异太大,不方便使用,这是最大的问题。
文件名有空格会报错,这个就是靠平时养成严谨的习惯了。
有一些可以完善的地方,例如,每次执行完的显示好几行信息格式是一样的,可以作为一个函数调用;if可以搭配else用能少很多代码避免重复写条件,以后调整也方便。
临时文件可以放到系统temp目录去,那里面随便乱搞都没事,自动取名字好了,不要用户去写无用的东西。
还有就是cab文件作为windows自带的压缩格式,有没有特殊功能可以开发,好的作品肯定要有吸引人用功能。
作者: HOPE2021 时间: 2021-8-23 08:13
回复 44# zz100001
谢谢您的反馈
作者: HOPE2021 时间: 2021-8-23 08:59
回复 44# zz100001
开发组已经在Windows10实体机和Winxp虚拟机测试过了,并没有发现您所说的文件名有空格就报错的情况,请明示.
谢谢.
作者: cmd1152 时间: 2021-8-23 13:00
回复 44# zz100001
你行你来(怎么来?当然是合作了!)
作者: cmd1152 时间: 2021-8-23 13:08
回复 44# zz100001
我Windows7 32位 测试过,没有问题
作者: cmd1152 时间: 2021-8-23 13:26
版本1.0.0013 增加更新功能,以后只发安装包
文件区\Hope Cab [ Version 1.0.0012 ].rar
作者: HOPE2021 时间: 2021-8-23 13:39
回复 49# cmd1152
文件呢?
作者: cmd1152 时间: 2021-8-23 13:41
回复 50# HOPE2021
我刚刚发现几个BUG,然后删了,现在可以下载了
作者: HOPE2021 时间: 2021-8-23 21:27
本帖最后由 HOPE2021 于 2021-8-23 21:45 编辑
回复 51# cmd1152
因为1.0.0014做了巨大的改进和更新模式的改进,特此发布源码[上半部分]:- @echo off & Mode Con: Cols=128 & @Goto :Begin
-
- ::--------Version---------------------------------------------------------------------------------------------------------------
-
- ; Hope Cab [Version 1.0.0014]
-
- ::--------Copyright-------------------------------------------------------------------------------------------------------------
-
- ; (C) Copyright 2020-2021 Hope Corp.
- ; (C) Copyright 2021-2021 Hope2021&Cmd1152 Corp.
-
- ; Warning: this computer program is protected by copyright law and international treaties. Unauthorized reproduction or
- ; distribution of this program (or any part thereof) will result in severe civil and criminal sanctions, and will be p-
- ; rosecuted to the maximum extent possible under the law.
- ; 警告:本计算机程序受著作权法和国际条约保护.如未经授权而擅自复制或传播本程序(或其中任何部分),将受到严厉的民事及刑事制裁,
- ; 并将在法律许可范围内受到最大程度的起诉.
-
- ::--------Main Function---------------------------------------------------------------------------------------------------------
-
- :Begin
- chcp 437 > nul
- color f0
- cls
- call :BL 15
- title Hope Cab
- echo. 膊膊膊膊膊膊膊膊膊膊膊膊圹圹圹圹圹圹圹圹圹圹圹
- echo. 膊 膊圹 _--圹
- echo. 膊 膊圹 ____北北圹
- echo. 膊_____________________膊圹__________.北膊膊膊膊圹
- echo. 膊 膊圹 圹
- echo. 膊 圹圹圹圹圹圹圹圹圹圹 __--圹
- echo. 膊 圹 .Cab 圹 ____北北圹
- echo. 北___________圹 Make Your Life 圹.北膊膊膊膊圹
- echo. 北 圹 Easier. 圹 圹
- echo. 膊 圹 Hope 圹 __--圹
- echo. 膊 圹圹圹圹圹圹圹圹圹圹 ____北北圹
- echo. 膊_____________________膊圹__________.北膊膊膊膊圹
- echo. 膊 膊圹 __--圹
- echo. 膊 膊圹 _____北北圹
- echo. 膊 膊圹 .北膊膊膊膊圹
- echo. 膊膊膊膊膊膊膊膊膊膊膊圹圹圹圹圹圹圹圹圹圹圹圹
- ping 127.1 /n 2 > nul
- chcp 936 > nul
- @Goto :Main
-
- :Main
- cls
- Title Hope Cab [Version 1.0.0014] 键入H以查看帮助信息
- Call :Tool_Bar_Main
- Call :FilesAndFolder
- echo.
- Set Command=/////*无效操作*/////
- Set /p Command= ^>^>
- Set Command_a=%Command:~0,1%
- echo.
- Set Bin_Dir=%cd%
- Set Bin_Drive=%cd:~0,1%
- if /i "%Command_a%"=="H" (
- echo. Hope Cab [Version 1.0.0014]
- echo.
- Call :Line
- echo.
- echo. ^(C^) Copyright 2020-2021 Hope Corp.
- echo. ^(C^) Copyright 2021-2021 Hope2021^&Cmd1152 Corp.
- echo.
- Call :Line
- echo.
- set /p Corp=Warning: this computer program is protected by copyright law and international treaties. Unauthorized reproduction or distribut-<nul
- set /p Corp=ion of this program ^(or any part thereof^) will result in severe civil and criminal sanctions, and will be prosecuted to the max-<nul
- set /p Corp=imum extent possible under the law.<nul
- echo.
- echo.
- set /p Corp=警告:本计算机程序受著作权法和国际条约保护.如未经授权而擅自复制或传播本程序^(或其中任何部分^), 将受到严厉的民事及刑事制裁, 并将在法<nul
- set /p Corp=律许可范围内受到最大程度的起诉<nul
- echo.
- echo.
- Call :Line
- echo.
- echo. 依法授权给: %Username%
- echo.
- Call :Line
- echo.
- echo. Hope Cab 教程
- echo.
- Call :Line
- echo.
- echo. 1. 概述
- echo. Hope Cab 是一款基于Microsoft ^(R^) Windows 的命令行压缩文件资源管理器,支持.Cab文件的压缩/解压缩以及处理.
- echo.
- Call :Line
- echo.
- echo. 2. 压缩一个文件
- echo.
- echo. 压缩文件的命令很简单,命令格式如下:
- echo.
- echo. ^>^> F-FileName/CabName
- echo.
- echo. 命令参数解释:
- echo.
- echo. F- 命令前缀,代表对文件进行操作.
- echo. FileName 需要压缩的文件名称,包括拓展名.
- echo. CabName 压缩文件名,可以不包括.Cab的后缀.
- echo.
- echo. 例如,需要将Hope.ini文件压缩为Hope.Cab,有以下两种语法:
- echo.
- echo. F-Hope.ini/Hope.Cab
- echo. F-Hope.ini/Hope
- echo.
- echo. 注意事项:
- echo.
- echo. 1. 分隔FileName与CabName的/不可以有空格或是全角符号.
- echo. 2. 命令前缀不区分大小写.
- echo.
- Call :Line
- echo.
- echo. 3. 压缩一个目录
- echo.
- echo. 压缩目录的命令相较于压缩一个文件而言要难一些,命令格式如下:
- echo.
- echo. ^>^> R-FolderName/CabName:ListName
- echo.
- echo. 命令参数解释:
- echo.
- echo. R- 命令前缀,代表对目录进行操作.
- echo. FolderName 文件夹名
- echo. CabName 压缩文件名,可以不包括.Cab的后缀.
- echo. ListName 文件列表名,用于储存目录信息,使用完以后自动删除.
- echo.
- echo. 例如,需要将Hope目录下的所有文件压缩到Hope.Cab里,并将信息存储在Hope.Temp里,有以下两种语法:
- echo.
- echo. R-Hope/Hope.Cab:Hope.Temp
- echo. R-Hope/Hope:Hope.Temp
- echo.
- echo. 1. 分隔FolderName与CabName的/以及分隔CabName与ListName的:不可以有空格或是全角符号.
- echo. 2. 命令前缀不区分大小写.
- echo.
- Call :Line
- echo.
- echo. 3. 解压缩
- echo.
- echo. 压缩目录的命令相较于压缩一个文件而言要难一些,命令格式如下:
- echo.
- echo. ^>^> E-CabName
- echo.
- echo. 命令参数解释:
- echo.
- echo. E- 命令前缀,代表解压缩到当前目录下.
- echo. CabName 压缩文件名,可以不包括.Cab的后缀.
- echo.
- echo. 例如,需要解压Hope.Cab,有以下两种语法:
- echo.
- echo. E-Hope.Cab
- echo. E-Hope
- echo.
- echo. 1. 分隔FolderName与CabName的/以及分隔CabName与ListName的:不可以有空格或是全角符号.
- echo. 2. 命令前缀不区分大小写.
- echo.
- Call :Line
- echo.
- echo. 4. 返回上一级目录
- echo.
- echo. 如果您要返回上一级目录,请键入B
- echo.
- Call :Line
- echo.
- echo. 5. 进入到下一级目录
- echo.
- echo. 命令格式如下:
- echo.
- echo. ^>^> C-FolderName
- echo.
- echo. C- 命令前缀,代表前进到下一级目录.
- echo. FolderName 文件夹名.
- echo.
- echo. 例如,需要前进的Hope目录,可以键入:
- echo.
- echo. C-Hope
- echo.
- Call :Line
- echo.
- echo. 6. 切换磁盘
- echo.
- echo. 命令格式如下:
- echo.
- echo. ^>^> D-DiskVol
- echo.
- echo. D- 命令前缀,代表切换磁盘.
- echo. DiskVol 磁盘或驱动器盘符.
- echo.
- echo. 例如,需要切换到C:\,有三种语法:
- echo.
- echo. D-C
- echo. D-C:
- echo. D-C:\
- echo.
- Call :Line
- echo.
- echo. 7. 删除目录或文件
- echo.
- echo. 命令格式如下:
- echo.
- echo. ^>^> T-FileOrDirectory
- echo.
- echo. T- 命令前缀,代表删除目录或文件.
- echo. FileOrDirectory 目录或文件.
- echo.
- echo. 例如,删除Hope文件,但不知道是否是文件夹,可以输入:
- echo.
- echo. T-Hope
- echo.
- call :Line
- echo.
- echo. 8. 自定义解压
- echo.
- echo. 命令格式如下:
- echo.
- echo. ^>^> X-FolderName/CabName
- echo.
- echo. X- 命令前缀,代表自定义解压.
- echo. FolderName 目录.
- echo. CabName 压缩文件名,可以不包括.Cab的后缀.
- echo.
- echo. 例如,解压Hope.Cab到C:\Users\%Username%\Hope\Hope Cab\目录下,有两种语法:
- echo.
- echo. X-C:\Users\%Username%\Hope\Hope Cab\/Hope.Cab
- echo. X-C:\Users\%Username%\Hope\Hope Cab\/Hope
- echo.
- call :Line
- echo.
- echo. 9. 打开文件
- echo.
- echo. 命令格式如下:
- echo.
- echo. ^>^> U-FileName
- echo.
- echo. U- 命令前缀,代表打开文件.
- echo. FileName 文件名.
- echo.
- echo. 例如,打开Hope.ini,需要键入:
- echo.
- echo. U-Hope.ini
- echo.
- call :Line
- echo.
- echo. 10. 查找压缩文件
- echo.
- echo. 命令格式如下:
- echo.
- echo. ^>^> S-FileName
- echo.
- echo. S- 命令前缀,代表搜索文件.
- echo. CabName 压缩文件名,可以不包括.Cab的后缀.
- echo.
- echo. 例如,查找Hope.Cab,有两种语法:
- echo.
- echo. S-Hope.Cab
- echo. S-Hope
- echo.
- call :Line
- echo.
- echo. 11.更新
- echo.
- echo. 若要更新,请键入:P
- echo.
- call :Line
- echo.
- echo. ^>^> 请按回车键继续...
- echo.
- Call :Line
- echo.
- pause > nul
- @Goto Main
- )
- if /i "%Command_a%"=="F" @Goto :File
- if /i "%Command_a%"=="R" @Goto :Folder
- if /i "%Command_a%"=="E" @Goto :Extract
- if /i "%Command_a%"=="C" @Goto :Chdir
- if /i "%Command_a%"=="D" @Goto :Disk
- if /i "%Command_a%"=="B" cd.. & @Goto :Main
- if /i "%Command_a%"=="T" @Goto :DelFile
- if /i "%Command_a%"=="X" @Goto :Extract_Custom
- if /i "%Command_a%"=="U" @Goto :Run
- if /i "%Command_a%"=="S" @Goto :Search
- if /i "%Command_a%"=="P" @Goto :Update
- echo. ^>^> 命令语法不正确!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto Main
复制代码
作者: HOPE2021 时间: 2021-8-23 21:28
回复 52# HOPE2021
下半部分:- :File
- Set Commandb=%Command:~2%
- echo.%Commandb%
- Set FileName=%Commandb%
- Call :FileName
- Set CabName=%Commandb:*/=%
- Set "FileName=%FileName:"=%"
- Set "CabName=%CabName:"=%"
- Set Commandc=%CabName:~-4%
- echo.
- if /i "%Commandc%" neq ".cab" set CabName=%CabNAme%.Cab
- if /i exist "%FileName%" if /i not exist "%CabName%" (
- echo. ^>^> 对文件进行处理:
- Call :Line
- echo.%FileName%
- echo.%CabName%
- makecab /d maxdisksize=1099511627776 "%FileName%" "%CabName%"
- echo.
- echo. ^>^> 将 %FileName% 压缩为 %CabName% 成功!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
- )
- echo.
- echo. ^>^> 无此文件或已存在此压缩文档!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
-
- :Folder
- Set Commandb=%Command:~2%
- echo.%Commandb%
- Set FolderName=%Commandb%
- Call :FolderName
- Set ListName=%Commandb%
- Set CabName=%Commandb:*/=%
- Call :ListName
- Call :CabName_2
- Set "FolderName=%FolderName:"=%"
- Set "CabName=%CabName:"=%"
- Set Commandc=%CabName:~-4%
- if /i "%Commandc%" neq ".cab" set CabName=%CabNAme%.Cab
- if /i exist "%FolderCabName%\" if /i not exist "%CabName%" if /i not exist "%ListName%" (
- cd "%FolderName%"
- dir /b >> %ListName%"
- echo. ^>^> 对文件进行处理:
- Call :Line
- echo.%FolderName%
- echo.%CabName%
- echo.%ListName%
- makecab /d maxdisksize=1099511627776 /f "%ListName%"
- echo.
- echo. ^>^> 将 %FolderName% 压缩为 %CabName% 成功!
- echo.
- echo. ^>^> 请按回车键继续...
- if /i exist "%ListName%" del "%ListName%"
- cd..
- ren "%cd%\%FolderName%\Disk1\1.cab" "%CabName%"
- Move "%cd%\%FolderName%\Disk1\%CabName%" "%cd%"
- pause > nul
- @Goto :Main
- )
- echo.
- echo. ^>^> 无此文件或已存在此压缩文档!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
-
- :Extract
- Set CabName=%Command:~2%
- Set Commandc=%CabName:~-4%
- if /i "%Commandc%" neq ".cab" set CabName=%CabNAme%.Cab
- if /i exist "%CabName%" (
- expand "%CabName%" -f:* "%cd%\"
- echo. ^>^> 将 %CabName% 解压缩成功!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
- )
- echo.
- echo. ^>^> 无此压缩文档!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
-
- :Chdir
- Set FolderName=%Command:~2%
- if /i exist "%FolderName%\" (
- cd "%FolderName%"
- @Goto :Main
- )
- echo.
- echo. ^>^> 无此目录!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
-
- :Disk
- Set DiskVol=%Command:~2%
- Set DiskVol=%DiskVol:~0,1%
- if /i exist %DiskVol%: (
- %DiskVol%:
- @Goto :Main
- )
- echo.
- echo. ^>^> 无此磁盘或驱动器!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
-
- :DelFile
- Set FileOrDirectory=%Command:~2%
- if not exist "%FileOrDirectory%" (
- echo.
- echo. ^>^> 无此文件或目录!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
- )
- echo.
- echo. ^>^> 这会删除%FileOrDirectory%下的所有文件(如果这是文件夹)
- echo.
- echo. ^>^> 确认否[Y/N]?
- Call :Get_Key
- if /i "%key%"=="N" @Goto :Main
- if /i "%key%"=="Y" (
- if exist "%FileOrDirectory%\" (
- rd "%FileOrDirectory%" /s /q >nul 2>nul
- @Goto :Main
- )
- del "%FileOrDirectory%" /f /q >nul 2>nul
- @Goto :Main
- )
- if "%valid_key%"=="0" @Goto :DelFile
- @goto :DelFile
-
- :Extract_Custom
- Set Commandb=%Command:~2%
- Set CabName=%Command:~2%
- Set FolderName=%Command:~2%
- Set CabName=%Commandb:*/=%
- Set "CabName=%CabName:"=%"
- Call :Custom_FolderName
- Call :Custom_FolderName_2
- Set Commandc=%CabName:~-4%
- Set "FolderName=%FolderName:"=%"
- echo.%CabName%
- echo.%FolderName%
- if /i "%Commandc%" neq ".cab" set CabName=%CabNAme%.Cab
- if /i exist "%CabName%" if /i exist "%FolderName%\" (
- expand "%CabName%" -f:* "%FolderName%"
- echo. ^>^> 将 %CabName% 解压缩成功!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
- )
- echo.
- echo. ^>^> 无此压缩文档或此目录!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
-
- :Run
- Set FileName=%Command:~2%
- Set "FileName=%FileName:"=%"
- if /i exist "%FileName%\" (
- start explorer "%FileName%"
- @Goto :Main
- )
- if /i exist "%FileName%" (
- start "" "%FileName%"
- @Goto :Main
- )
- echo.
- echo. ^>^> 无此文件或目录!
- echo.
- echo. ^>^> 请按回车键继续...
- pause > nul
- @Goto :Main
-
- :Search
- Set CabName=%Command:~2%
- Set Commandc=%CabName:~-4%
- echo.
- echo. ^>^> 搜索中...
- if /i "%Commandc%" neq ".cab" set CabName=%CabNAme%.Cab
- for %%i in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
- if /i exist %%i: (
- cd /d %%i:
- FORFILES /P %%i:\ /S /M "%CabName%"
- )
- )
- echo.
- echo. ^>^> 搜索完成!
- echo.
- echo. ^>^> 请按回车键继续...
- %Bin_Drive%:
- cd %Bin_Dir%
- pause > nul
- @Goto :Main
-
- :Update
- cls
- echo.
- Set Bin_Dir=%0
- Set "Bin_Dir=%Bin_Dir:"=%"
- set /p UpdateFile= ^>^> 请输入更新包名称[.HopeUpdate]
- echo.
- Set "UpdateFile=%UpdateFile:"=%"
- echo.%UpdateFile%
- echo.
- if not exist "%UpdateFile%" (
- echo. ^>^> 无此更新文件!
- echo.
- echo. ^>^> 按任意键返回...
- pause>nul
- @Goto :Main
- )
- if not "%UpdateFile:~-11%"==".HopeUpdate" (
- echo. ^>^> 更新文件格式不正确!
- echo.
- echo. ^>^> 按任意键返回...
- pause>nul
- @Goto :Main
- )
- Call :Version
- echo.检测到%Version%...
- echo.
- cd.>"%Version%.Bat"
- for /f "usebackq delims= skip=1" %%i in ("%UpdateFile%") do (
- echo.%%i >> "%Version%.Bat"
- )
- Certutil -decode -f "%Version%.Bat" "%Version%.Bat"
- Mklink "%userprofile%\Desktop" "%Version%.Bat"
- Del "%Bin_Dir%"
- pause
- @Exit
-
- ::--------Functions-------------------------------------------------------------------------------------------------------------
-
- :Version
- Rem ; Call :Version
- for /f "usebackq delims=" %%i in ("%UpdateFile%") do (
- echo.%%i
- Set Version=%%i
- @Goto :eof
- )
-
- :Custom_FolderName
- Rem ; Call :Custom_FolderName
- Set FolderName=%FolderName:~0,-1%
- echo.%FolderName%|Find "/"
- if not errorlevel 1 (
- @Call :Custom_FolderName
- )
- if errorlevel 1 (
- @Goto :eof
- )
- @Call :Custom_FolderName
-
- :Custom_FolderName_2
- Rem ; Call :Custom_FolderName_2
- Set FNa=%FolderName:~-1%
- echo.%FNa%|Find "\"
- if not errorlevel 1 (
- @Call :Custom_FolderName
- )
- if errorlevel 1 (
- @Goto :eof
- )
- @Call :Custom_FolderName_2
-
- :Get_Key
- Rem ; Call :Get_Key
- Set "key="
- for /f "delims=" %%a in ('xcopy /w "%~f0" "%~f0" 2^>nul') do if not defined key Set "key=%%a"
- Set "key=%key:~-1%"
- Set "valid_key=0"
- @Goto :eof
-
- :CabName
- Rem ; Call :CabName
- Set CabName=%CabName:~0,-1%
- echo.%CabName%|Find "/"
- if not errorlevel 1 (
- @Call :CabName
- )
- if errorlevel 1 (
- @Goto :eof
- )
- @Call :CabName
-
- :CabName_2
- Rem ; Call :CabName
- Set CabName=%CabName:~0,-1%
- echo.%CabName%|Find ":"
- if not errorlevel 1 (
- @Call :CabName
- )
- if errorlevel 1 (
- @Goto :eof
- )
- @Call :CabName
-
- :ListName
- Rem ; Call :ListName
- Set ListName=%ListName:~1%
- echo.%ListName%|Find ":"
- if not errorlevel 1 (
- @Call :ListName
- )
- if errorlevel 1 (
- @Goto :eof
- )
- @Call :ListName
-
- :FolderName
- Rem ; Call :FolderName
- Set FolderName=%FolderName:~0,-1%
- echo.%FolderName%|Find "/"
- if not errorlevel 1 (
- @Call :FolderName
- )
- if errorlevel 1 (
- @Goto :eof
- )
- Set FolderName=%FolderName:~0,-1%
- echo.%FolderName%|Find "/"
- if not errorlevel 1 (
- @Call :FolderName
- )
- @Call :FileName
-
- :FileName
- Rem ; Call :FileName
- Set FileName=%FileName:~0,-1%
- echo.%FileName%|Find "/"
- if not errorlevel 1 (
- @Call :FileName
- )
- if errorlevel 1 (
- @Goto :eof
- )
- @Call :FileName
-
- :BL
- Rem ; Call :BL [Blanks Lines]
- for /l %%i in (1,1,%1) do echo.
- @Goto :eof
-
- :Type
- Rem ; Call :Type "[Text]"
- Set /p Str=%~1<nul
- for /l %%a in (1,1,%Timer%) do Set ReturnKey=0
- @Goto :eof
-
- :Tool_Bar_Main
- Rem ; Call :Tool_Bar_Main
- echo.
- call :Type "■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■"
- call :Type "■ Hope Cab ■"
- call :Type "■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■"
- echo.
- echo.
- @Goto :eof
-
-
- :Line
- Rem ; Call :Line
- call :Type "--------------------------------------------------------------------------------------------------------------------------------"
- echo.
- @Goto :eof
-
- :FilesAndFolder
- Rem ; Call :FilesAndFolder
- dir /w
- @Goto :eof
-
- ::--------Annotation------------------------------------------------------------------------------------------------------------
-
- Rem ; [File]
- F-FileName/CabName
-
- Rem ; [Folder]
- R-FolderName/CabName:ListName
-
- Rem ; [Extract]
- R-FolderName/CabName:ListName
-
- Rem ; [Extract]
- R-FolderName/CabName:ListName
-
- Rem ; [Extract_Custom]
- X-FolderName/CabName
复制代码
作者: cmd1152 时间: 2021-8-23 21:29
现在1.0.0015了...
作者: HOPE2021 时间: 2021-8-23 21:30
回复 54# cmd1152
1.0.0014及以后的更新模块改动,发这个是因为要做更新的底版,就像装系统需要bios一样...
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |