Board logo

标题: [文件操作] 【已解决】批处理中copy "%~dp0*.exe"是什么意思 [打印本页]

作者: lixiaodaoaaa    时间: 2008-8-19 08:47     标题: 【已解决】批处理中copy "%~dp0*.exe"是什么意思

  1. COPY "%~dp0*.EXE" F:\
复制代码

什么意思啊?

我怎么不懂啊。
%~dp0*
是什么东东,我怎么看不懂,郁闷啊。。
希望得到大侠的指点,谢谢了1!
作者: pusofalse    时间: 2008-8-19 08:49

多看下for和call的帮助。
作者: namejm    时间: 2008-8-19 09:20

  %0 表示批处理文件自身,%~d0 表示批处理文件所在的分区,%~p0 表示批处理所在的目录(不含分区符号),而 * 表示匹配任意多个字符,组合起来,%~dp0*.exe 就是表示在批处理当前路径下所有的exe文件。
作者: lixiaodaoaaa    时间: 2008-8-19 13:30     标题: 分析的非常彻底

再次感谢,以后遇到这类问题,我可以轻易回答了
感谢namejm!
作者: 愚无尽    时间: 2008-8-19 19:50

原来如此。。。。。。。。。
作者: 漫步彩云端    时间: 2008-8-21 14:43

谢谢
这回知道了
作者: leisonn    时间: 2008-10-5 20:17

我也遇到了同样的问题,现在解决了,呵呵。感谢了
作者: yuhaodong    时间: 2008-12-22 20:31

我也懂了!!!!!!!!!!!!
作者: z25856666    时间: 2008-12-22 21:56

厉害阿~~~~~~~~
作者: pgydgs    时间: 2008-12-25 10:08

恍然大悟啊!哈哈
经常看到 %~dp0%
作者: irresolute    时间: 2009-3-6 12:33     标题: 补充说明

%~dp0%表示当前文件所在的路径,*.exe表示所有可执行的文件,合起来%~dp0*.EXE表示当前文件所在路径下的所有可执行文件,"%~dp0*.EXE" 外再加引号是为了防路径中的空格。
作者: tangqingfu    时间: 2013-6-21 22:54

回复 11# irresolute
谢谢分享!
作者: 522235677    时间: 2013-6-21 22:58

  1.      %~I          - 删除任何引号("),扩展 %I
  2.      %~fI        - 将 %I 扩展到一个完全合格的路径名
  3.      %~dI        - 仅将 %I 扩展到一个驱动器号
  4.      %~pI        - 仅将 %I 扩展到一个路径
  5.      %~nI        - 仅将 %I 扩展到一个文件名
  6.      %~xI        - 仅将 %I 扩展到一个文件扩展名
  7.      %~sI        - 扩展的路径只含有短名
  8.      %~aI        - 将 %I 扩展到文件的文件属性
  9.      %~tI        - 将 %I 扩展到文件的日期/时间
  10.      %~zI        - 将 %I 扩展到文件的大小
  11.      %~$PATH:I   - 查找列在路径环境变量的目录,并将 %I 扩展
  12.                    到找到的第一个完全合格的名称。如果环境变量名
  13.                    未被定义,或者没有找到文件,此组合键会扩展到
  14.                    空字符串
复制代码
看到I前面的字母了吗。%~dpnx0 相当于 %~0    中间有~,就是路径包含空格的话,也不会自动加引号的




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2