批处理 字符串截取 :从完整路径中截取文件名

要求DOS批处理命令实现:从完整路径中截取文件名如:D:\aaa\bbb\2009_file.txt我想从上面这个路径中得到字符串“file”。注意,目录名是未知的,目录... 要求DOS 批处理命令实现:从完整路径中截取文件名

如: D:\aaa\bbb\2009_file.txt

我想从上面这个路径中得到字符串 “file” 。

注意,目录名是未知的,目录深度是未知的,但文明名格式符合 “年份_字符串.后缀” 格式。我想要的就是其中的 '字符串'。

谢谢
自己解决了问题。如下:

@echo off

set /p file=文件:
call :deal %file%
pause
:deal
set table=%~n1
echo %table:~5%
展开
 我来答
千羽之城
2009-08-21 · TA获得超过4510个赞
知道大有可为答主
回答量:2132
采纳率:0%
帮助的人:1413万
展开全部
@ECHO OFF&SETLOCAL ENABLEDELAYEDEXPANSION
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 EXIST %%I:\* (
CD /D %%I:
FOR /F "DELIMS=" %%A IN ('DIR /S/B 2009_*.txt 2^>nul') DO (
SET FOO=%%~NA
SET FOO=!FOO:*_=!
ECHO/!FOO! %%A
)
)
)
)
PAUSE>NUL

代码仅作演示,同时在截取字符后面添加了文件路径{%%A}。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式