windows11--判断文件夹是否存在

使用CMD在Windows文件夹中快速查找是否存在特定子文件夹的方法
本文介绍了三种在Windows文件夹中查找是否存在特定子文件夹的方法:通过命令行`dir`/`find`、`ifexist`检查以及利用`cmd`中的TAB键补全。方法三是推荐的高效方式。

需求背景

不想全盘检索,只是想判断当前文件夹下,是否存在名为xxx的子文件夹

具体操作

方法一

  • 打开你要进行搜索的文件夹
  • 点击上面的地址栏,输入cmd,按下回车键,进入cmd 界面
    在这里插入图片描述
  • 输入dir /b | find "xxx文件名"(补充:输入dir /b"可列出所有子文件的名字)
  • 如果xxx文件存在,则返回xxx
  • 如果xxx文件不存在,则无反应

方法二

  • 打开你想要进行检索的文件夹
  • 点击上面的地址栏,输入cmd,按下回车键,进入cmd 界面
  • 输入if exist xxx文件名 echo true
  • 如果xxx文件存在,则返回true
  • 如果xxx文件不存在,则无反应

方法三(推荐)

  • 打开你想要进行检索的文件夹
  • 点击上面的地址栏,输入cmd,按下回车键,进入cmd 界面
  • 直接输入xxx文件名,在输入过程中按下TAB键补全
  • 如果文件存在,则完成补全操作
  • 如果文件不存在,则无法完成补全操作
当然,以下是**Windows Batch 脚本**版本,用于在 Jenkins 或 CMD 中执行打包任务,并**新增文件夹存在判断**(如果源目录不存在则跳过或报错),使用 `if` 实现分支判断。 ```batch @echo off setlocal :: 获取构建类型 set "BUILD_TYPE=%BUILD_TYPE%" set "OUTPUT=Output" :: 创建输出目录 if not exist "%OUTPUT%" mkdir "%OUTPUT%" :: 检查 BUILD_TYPE 是否为空 if "%BUILD_TYPE%"=="" ( echo ❌ 未指定 BUILD_TYPE exit /b 1 ) :: 分支处理 if "%BUILD_TYPE%"=="BUILD_CODE" ( if exist "Src\" (zip -rq "%OUTPUT%\code_src.zip" Src\) if exist "Docs\" (zip -rq "%OUTPUT%\code_docs.zip" Docs\) if exist "Config\" (zip -rq "%OUTPUT%\code_config.zip" Config\) goto :success ) if "%BUILD_TYPE%"=="BUILD_QAC" ( if exist "Src\" (zip -rq "%OUTPUT%\qac_src.zip" Src\) if exist "Rules\" (zip -rq "%OUTPUT%\qac_rules.zip" Rules\) if exist "Templates\" (zip -rq "%OUTPUT%\qac_templates.zip" Templates\) goto :success ) if "%BUILD_TYPE%"=="BUILD_CODESONAR" ( if exist "Src\" (zip -rq "%OUTPUT%\cs_src.zip" Src\) if exist "Libs\" (zip -rq "%OUTPUT%\cs_libs.zip" Libs\) if exist "Config\CodeSonar\" (zip -rq "%OUTPUT%\cs_config.zip" Config\CodeSonar\) goto :success ) if "%BUILD_TYPE%"=="BUILD_ALL" ( if exist "Src\" (zip -rq "%OUTPUT%\all_src.zip" Src\) if exist "Tools\" (zip -rq "%OUTPUT%\all_tools.zip" Tools\) if exist "Config\" (zip -rq "%OUTPUT%\all_configs.zip" Config\) goto :success ) :: 默认:非法类型 echo ❌ 无效 BUILD_TYPE: %BUILD_TYPE% exit /b 1 :success echo ✅ %BUILD_TYPE% 打包完成 exit /b 0 ``` --- ### ✅ 解释: - `if exist "Dir\"`:判断目录是否存在,防止 zip 报错。 - `zip -rq`:假设你已安装 `zip` 工具(如通过 Cygwin、Git Bash 或 Windows Subsystem for Linux);若用原生命令,见下方说明。 - `setlocal`:避免污染全局环境变量。 - `exit /b 0/1`:返回状态码,供 Jenkins 判断成功或失败。 - 支持 Jenkins 传入 `%BUILD_TYPE%` 环境变量。 > ⚠️ 注意:Windows 原生不带 `zip` 命令。如果你在纯 CMD 下运行,建议改用 `tar`(Win10+ 支持)或使用 PowerShell。 --- ### ✅ 替代方案:使用 `tar`(Windows 10+/WSL/CMD 可用) ```batch if exist "Src\" tar -czf "%OUTPUT%\code_src.tar.gz" Src\ ``` 替换所有 `zip -rq` 为 `tar -czf`,例如: ```batch if exist "Src\" tar -czf "%OUTPUT%\code_src.tar.gz" Src\ ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值