标题: [文本处理] 如何获取拖拽/拖放到bat上执行的文件名字和路径 [打印本页]
作者: adadaad 时间: 2017-5-11 15:27 标题: 如何获取拖拽/拖放到bat上执行的文件名字和路径
本帖最后由 pcl_test 于 2018-4-20 17:01 编辑
@echo off&set set=%*
for %%i in (%set%) do echo %%i
我现在只能打印拖拽文件的全路径,但是我不知道怎么能打印出 %%i 的文件路径还有文件名,最好后缀也能打印出来
作者: adadaad 时间: 2017-5-11 16:03
@echo off&set set=%*
for %%i in (%set%) do (for /f "tokens=* delims=%cd%" %%a in ("%%i") do (for /f "tokens=1,2 delims=." %%b in ("%%a") do echo %cd% & echo %%b & echo %%c))
pause
我现在到是写出来的,不过这也太复杂了吧,,有没有更简洁一点的?
作者: cfwyy77_bat 时间: 2017-5-11 16:55
本帖最后由 cfwyy77_bat 于 2017-5-11 16:57 编辑
我只会拖一个文件~复制代码
作者: adadaad 时间: 2017-5-11 17:07
拖一个是比较简单的,不过我现在需要一次拖好多个
作者: adadaad 时间: 2017-5-11 17:37
@echo off&set set=%*
for %%i in (%set%) do (for /f "tokens=* delims=%cd:~0,-1%" %%a in ("%%i") do (for /f "tokens=2 delims=\" %%b in ("%%a") do (for /f "tokens=1,2 delims=." %%c in ("%%b") do echo %cd% & echo %%c & echo %%d)))
pause
更加复杂了,我要吐了
作者: cfwyy77_bat 时间: 2017-5-12 08:46
回复 5# adadaad
好复杂,表示看不懂,多个 的话 我想想只也会这个了,超过9个就不行了- @echo off
- for %%i in (%~1 %~2 %~3 %~4 %~5 %~6 %~7 %~8 %~9) do (
- if not %%i=="" echo %%i
- )
- pause
复制代码
作者: 老刘1号 时间: 2017-5-17 20:03
本帖最后由 老刘1号 于 2017-5-17 20:04 编辑
- @(for %%a in (%*) do @Echo FileName:%%~na FilePath:%%~dpa)
- @pause
复制代码
作者: adadaad 时间: 2017-5-18 14:33
谢谢老刘,要的就是这个
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |