批处理脚本修改:移除文件路径中D:\至Ready前的前缀
批处理脚本修改方案
直接通过字符串替换移除指定前缀即可实现需求,修改后的脚本如下:
@echo off del 0List.txt 2>nul set "prefix=D:\MyFolder\" for /F "delims=" %%I in ('dir "D:\MyFolder\Ready\*.txt" /A-D /B /S 2^>nul') do ( set "fullpath=%%~fI" setlocal enabledelayedexpansion echo !fullpath:%prefix%=!>>0List.txt endlocal )
关键修改说明:
- 定义
prefix变量存储需要移除的路径前缀D:\MyFolder\ - 在for循环内启用延迟变量扩展(
setlocal enabledelayedexpansion):循环中动态生成的变量需要用!而非%引用,否则无法实时解析变量的最新值 - 通过
!fullpath:%prefix%=!语法,将完整路径中的目标前缀替换为空,最终得到以Ready\开头的路径
内容的提问来源于stack exchange,提问作者programc7r
相关产品推荐
相关产品推荐

