标题: [文件操作] [已解决]批处理命令set /p中路径提取文件名 [打印本页]
作者: pZjVa0 时间: 2013-7-27 13:06 标题: [已解决]批处理命令set /p中路径提取文件名
假设- @echo off
- set /p name=
- echo %name%
- pause
复制代码
这段代码是直接把输入的内容输出,如果用户直接把一个文件拖到窗口里,就会获得类似下面地址- "C:\Program Files\7-Zip\readme.txt"
复制代码
我开始的想法是直接采用for 语句进行过滤,但如果用户单纯输入readme.txt就会出错误。
我的问题是,如何可以在输出时只提取保留文件名 (readme.txt),但同时也支持像上面批处理代码一样手动输入文件名时可以正确获取到文件名?
作者: apang 时间: 2013-7-27 13:38
不明白你想干什么。
这样试试:- @echo off
- set /p name=输入或拖入:
- for %%a in ("%name:"=%") do echo,%%~nxa
- pause
复制代码
作者: weichenxiehou 时间: 2013-7-27 13:39
- @echo off
- set /p name=
- for %%a in (%name%) do echo %%~nxa
- pause
复制代码
作者: pZjVa0 时间: 2013-7-27 14:21
回复 3# weichenxiehou
非常好。我很喜欢你的签名
作者: Batcher 时间: 2013-7-28 12:21
回复 4# pZjVa0
别人帮你解决了问题之后,请给人家加分。
作者: pZjVa0 时间: 2013-7-28 12:41
回复 5# Batcher
昨天他回答时我的分提前用了,所以加不了,抱歉。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |