|
waini
新手上路

积分 10
发帖 3
注册 2006-5-25
状态 离线
|
『楼 主』:
请教BAT剥取文件后缀名的方法
使用 LLM 解释/回答一下
我现在得到个这样的 路径
d:\uestc\23.txt
然后我想取得 23.txt 这个文件名字
我该怎么弄啊?
参考了N张帖子了 没有眉目 新手
急盼指点
|
|
2006-5-27 21:24 |
|
|
无奈何
荣誉版主
      
积分 1338
发帖 356
注册 2005-7-15
状态 离线
|
『第 2 楼』:
使用 LLM 解释/回答一下
cmd下可以试试这样:
for %i in (d:\uestc\23.txt) do @echo %~nxi
|

☆开始\运行 (WIN+R)☆
%ComSpec% /cset,=何奈无── 。何奈可无是原,事奈无做人奈无&for,/l,%i,in,(22,-1,0)do,@call,set/p= %,:~%i,1%<nul&ping/n 1 127.1>nul
|
|
2006-5-27 21:50 |
|
|
waini
新手上路

积分 10
发帖 3
注册 2006-5-25
状态 离线
|
|
2006-5-27 22:26 |
|
|
scrate
初级用户
 
积分 160
发帖 73
注册 2007-9-13
状态 离线
|
『第 4 楼』:
使用 LLM 解释/回答一下
for %i in (d:\uestc\23.txt) do @echo %~nxi
不明白啊。这怎么工作的解释解释给我这个新手听听被。
|
|
2007-9-16 17:30 |
|
|
lxmxn
版主
       
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第 5 楼』:
使用 LLM 解释/回答一下
Originally posted by scrate at 2007-9-16 17:30:
for %i in (d:\uestc\23.txt) do @echo %~nxi
不明白啊。这怎么工作的解释解释给我这个新手听听被。
请看for命令的帮助,最后面有解释:
~I - 删除任何引号("),扩充 %I
%~fI - 将 %I 扩充到一个完全合格的路径名
%~dI - 仅将 %I 扩充到一个驱动器号
%~pI - 仅将 %I 扩充到一个路径
%~nI - 仅将 %I 扩充到一个文件名
%~xI - 仅将 %I 扩充到一个文件扩展名
%~sI - 扩充的路径只含有短名
%~aI - 将 %I 扩充到文件的文件属性
%~tI - 将 %I 扩充到文件的日期/时间
%~zI - 将 %I 扩充到文件的大小
%~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩充
到找到的第一个完全合格的名称。如果环境变量名
未被定义,或者没有找到文件,此组合键会扩充到
空字符串
可以组合修饰符来得到多重结果:
%~dpI - 仅将 %I 扩充到一个驱动器号和路径
%~nxI - 仅将 %I 扩充到一个文件名和扩展名
%~fsI - 仅将 %I 扩充到一个带有短名的完整路径名
%~dp$PATH:i - 查找列在路径环境变量的目录,并将 %I 扩充
到找到的第一个驱动器号和路径。
%~ftzaI - 将 %I 扩充到类似输出线路的 DIR
在以上例子中,%I 和 PATH 可用其他有效数值代替。%~ 语法
用一个有效的 FOR 变量名终止。选取类似 %I 的大写变量名
比较易读,而且避免与不分大小写的组合键混淆。
|
|
2007-9-16 21:01 |
|
|
british123
新手上路

积分 6
发帖 3
注册 2007-8-22
状态 离线
|
|
2007-9-17 00:32 |
|