[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理如何实现可选择性是否批量解压指定目录/路径/文件夹里的压缩文件/压缩包

本帖最后由 eclairkk 于 2017-3-20 20:19 编辑

******************20170320问题******************
自行测出BUG,求BUG,求解决。
1 文件名为单数字:1.7z、2.7z、3.7z 的时 批处理无法生成正确的配置文件,丢失文件名部分的配置。
2 批处理无法直接输出checked=1,虽然 checked=“1” 效果一样
未验证完整代码链接
  1. https://pan.baidu.com/s/1eSvGLvs
复制代码
.

;---以下是软件自选安装配置文件---
;// <简要说明>
;//
;//“set”一项必须置顶,其他软件放在[SET]之后,名字按1-n数字命名,如 [1],软件数量不限。
;// name/autopath/Manual/ver/ico/Parameter/line/checked这些字段不能改。

;// name---------软件名;
;// autopath-----自动安装软件相对路径;
;// Manual-------自定义安装软件相对路径;
;// ver----------软件版本,如无就自动获取;
;// ico----------软件图标;
;// Parameter----软件安装参数;
;// line---------软件简要说明;
;// checked------软件默认选择状态,"1"为默认选中,空为不选中。
;// 如:"logopath=logo\logo.jpg" 填写图片相对路径,如不填则按默认显示LOGO。图片尺寸:Width:108×Height:340
;// rd=后写出程序结束时删除的文件夹(相对路径即可),如:software等
;// delmyself=后为1将删除程序自身;为2将删除所在文件夹。

[set]
name=软件自选安装管理器
softversion= ""
wait=20
logopath=logo.jpg
Author="更多软件下载点击这里"
Link="http://shareto.blog.1633.com/"
rd=
delmyself=

[1]
name=[系统] 万能驱动助理
autopath=apps\系统\Drivers.exe
Manual=apps\系统\Drivers.exe
ver=6.6.2016.0815
ico=
Parameter=
line=WindowsXP_32位 Windows7_64位 万能驱动
checked=1

******************20170318问题******************
【高难度】多个压缩包根据情况选择解压部分
压缩包类型:7z
压缩包路径:U盘soft目录下的多个二三级目录

需求:
遍历U:\soft目录及子目录下的压缩包。批处理内显示文件名列表。

调用U盘soft目录下的7z解压程序,解压遍历得到的文件,解压前提示选择YN。Y解压,N不解压。

解压路径C:\p

遍历目录 我只找到单列显示的

@echo off
for /f "delims=" %%a in ('dir /s/a-d /b *.rar') do echo %%~na

pause

TOP

一点都不难

TOP

本帖最后由 eclairkk 于 2017-3-20 20:15 编辑

******************20170320******************
求BUG,求解决。
自行测出 文件名为单数字:1.7z、2.7z、3.7z 的时 批处理无法生成正确的配置文件,丢失文件名部分的配置。
1

评分人数

    • pcl_test: 勿随意删改原帖内容PB -30

TOP

本帖最后由 ShowCode 于 2017-3-19 22:52 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('dir /b /s /a-d "U:\soft\*.7z"') do (
  4.     set input=
  5.     set /p input=[Y/N]
  6.     if /i "!input!" equ "Y" (
  7.         "U:\soft\7.exe" e "%%i" -o "C:\p"
  8.     )
  9. )
复制代码

TOP

本帖最后由 eclairkk 于 2017-3-20 20:15 编辑

******************20170320******************
求BUG,求解决。
自行测出 文件名为单数字:1.7z、2.7z、3.7z 的时 批处理无法生成正确的配置文件,丢失文件名部分的配置。
1

评分人数

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('dir /b /s /a-d "U:\soft\*.7z"') do (
  4.     set input=
  5.     set /p input=[Y/N]
  6.     if /i "!input!"=="Y" (
  7.         "U:\soft\7.exe" e "%%i" -o "C:\p"
  8.     )
  9. )
复制代码

TOP

本帖最后由 eclairkk 于 2017-3-20 20:14 编辑

******************20170320******************
求BUG,求解决。
自行测出 文件名为单数字:1.7z、2.7z、3.7z 的时 批处理无法生成正确的配置文件,丢失文件名部分的配置。

TOP

本帖最后由 eclairkk 于 2017-3-20 20:15 编辑

******************20170320******************
求BUG,求解决。
自行测出 文件名为单数字:1.7z、2.7z、3.7z 的时 批处理无法生成正确的配置文件,丢失文件名部分的配置。

TOP

回复 8# eclairkk
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('dir /b /s /a-d "U:\soft\*.7z"') do (
  4.     set input=
  5. if /i not "!input!"=="A" (
  6.     set /p input=%%~i:[Y/N/A]
  7. )
  8.     if /i "!input!"=="Y" (
  9.         "U:\soft\7.exe" e "%%~i" -o "C:\p"
  10.     )
  11.     if /i "!input!"=="A" (
  12.         "U:\soft\7.exe" e "%%~i" -o "C:\p"
  13.     )
  14. )
复制代码
A是All

TOP

本帖最后由 eclairkk 于 2017-3-20 20:15 编辑

******************20170320******************
求BUG,求解决。
自行测出 文件名为单数字:1.7z、2.7z、3.7z 的时 批处理无法生成正确的配置文件,丢失文件名部分的配置。
1

评分人数

    • pcl_test: 勿随意删改原帖内容PB -20

TOP

回复 6# eclairkk


    5楼代码第6行笔误,已更正。

TOP

回复 11# eclairkk


这样可以一个一个询问并生成new.bat
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. >"new.bat" type nul
  4. for /f "delims=" %%i in ('dir /b /s /a-d "U:\soft\*.7z"') do (
  5.     set input=
  6.     set /p input=[Y/N]
  7.     if /i "!input!" equ "Y" (
  8.         >>"new.bat" echo "U:\soft\7.exe" e "%%i" -o "C:\p"
  9.     )
  10. )
复制代码

TOP

本帖最后由 eclairkk 于 2017-3-20 20:15 编辑

******************20170320******************
求BUG,求解决。
自行测出 文件名为单数字:1.7z、2.7z、3.7z 的时 批处理无法生成正确的配置文件,丢失文件名部分的配置。
1

评分人数

    • pcl_test: 指定回应某楼层的在相应楼层点回复,少引用PB -1

TOP

本帖最后由 eclairkk 于 2017-3-20 20:16 编辑

******************20170320******************
求BUG,求解决。
自行测出 文件名为单数字:1.7z、2.7z、3.7z 的时 批处理无法生成正确的配置文件,丢失文件名部分的配置。
1

评分人数

    • pcl_test: 勿随意删改原帖内容PB -20

TOP

返回列表