zoukankan      html  css  js  c++  java
  • 智能文件选择列表—— bat 批处理

    智能文件选择列表 *.wim

    @echo off
    setlocal enabledelayedexpansion
    title 智能文件选择列表
    
    pushd %~dp0 & cd /d %~dp0
    
    
    :menu
    ::智能文件选择列表 *.wim
    if not defined wimfile call :filesel wim
    
    if %errorlevel%==0 (
        set wimfile=%selfile%
        echo 已经选择:!wimfile!
    ) else (
        echo 错误:未找到 *.%suffix% 文件...
    )
    
    
    pause
    
    
    ::=================================================
    goto :EOF
    :filesel
    ::智能文件选择列表
    ::只有1个文件时自动选中,大于1≤100列表文件,>100则不再列表,改为手动输入;选择错误会自动返回选择菜单。
    ::列表菜单 空格键翻页,Q结束翻页
    set "suffix=%~1"
    set "errorlevel=0"
    for /f %%a in ('dir /a /b *.%suffix% 2^>nul ^| find /c /n /v ""') do set filenum=%%a
    if %filenum% EQU 0 ( set "errorlevel=1" & goto :EOF )
    if %filenum% GTR 100 (
            echo 当前文件数目大于100,列表已带来不了多少便利
            echo 请输入文件路径:
            set /p selfile=
            set selfile=!selfile:"=!
            cls & goto :EOF )
    if %filenum% EQU 1 ( set select=1 ) else (
        dir /a /b *.%suffix% | find /n /v "" | more & set /p select=请输入文件编号:
    )
    
    if %select% LSS 1          ( echo 只能输入 1 - %filenum% 之间的数字 && pause>nul && goto filesel )
    if %select% GTR %filenum% ( echo 只能输入 1 - %filenum% 之间的数字 && pause>nul && goto filesel )
    set /a var=%select%-1
    
    if not %var% LEQ 0 ( set "skip=skip=%var% " ) else set skip=
    for /f "%skip%delims=" %%b in ('dir /a /b *.%suffix% ^| find /v ""') do (
            set "selfile=%%~fb" && cls & goto :EOF
    )
    ::=================================================
  • 相关阅读:
    IOS之Block的应用-textFeild的回调应用
    KVC与KVO的不同
    git
    perl读取excel
    Linux用户管理
    Linux软件包的管理
    linux系统学习(二)
    linux系统学习(一)
    js模版渲染
    Discuz核心函数的解析
  • 原文地址:https://www.cnblogs.com/markleaf/p/8011564.html
Copyright © 2011-2022 走看看