Board logo

标题: 問:批處理中如何獲得文件名? [打印本页]

作者: bush     时间: 2006-3-10 12:47    标题: 問:批處理中如何獲得文件名?

當然我指的文件名是不包括擴展名的,
比如:
for %i in (*.txt) do command
這裡的%i都是形如 file.txt,file2.txt的。
如果我在參數中只需要file,file2呢?
作者: chenall     时间: 2006-3-10 15:12
for %i in (*.txt) do echo %~ni
作者: bagpipe     时间: 2006-3-11 10:48
/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r/r捡破烂中ing..............
作者: baomaboy     时间: 2006-3-11 12:59
谢谢
作者: bush     时间: 2006-3-11 13:57
??
楼上几位在说什么呀?
作者: chenall     时间: 2006-3-11 16:18
使用%~ni
就可以获取 for %i in (*.txt)中的文件名部份.
作者: bush     时间: 2006-3-11 23:13    标题: Re:chenall

不行的,只是每一条都显示%~ni
作者: zjnbwdj     时间: 2006-3-12 00:15
那好办
for %i in (file.txt,file2.txt) do command
这样不就行罗?
作者: chenall     时间: 2006-3-12 09:34
楼主用的是什么系统?
NT的系统中都是可以使用
%~nI        - 仅将 %I 扩展到一个文件名
作者: bush     时间: 2006-3-12 23:30    标题: chenall

这里当然是dos & 98啦。
NT控制台和DOS应该区别对待。
作者: Climbing     时间: 2006-3-13 00:19
照楼主的要求,DOS的内部命令是没有字符串处理功能的,如果不引入第三方命令,恐怕很难解决。

wil来看下有没有好办法。