Board logo

标题: [文件操作] 批处理怎样进入另一个批处理的当前目录? [打印本页]

作者: lzwudi    时间: 2008-8-18 23:58     标题: 批处理怎样进入另一个批处理的当前目录?

D盘下的1.BAT文件内容如下:
START E:\2.BAT

E盘下的2.BAT内容如下:
COPY *.EXE F:\

运行D盘下的1.BAT后不能复制E盘下的EXE文件
怎么才能让1.BAT运行2.BAT后进入2.BAT的当前目录?
作者: Batcher    时间: 2008-8-19 00:01

把2.BAT内容改成:
  1. COPY "%~dp0*.EXE" F:\
复制代码

作者: lzwudi    时间: 2008-8-19 01:53

%~dp0  和  %cd%   有什么区别呢?  详细一点好吗?
作者: lixiaodaoaaa    时间: 2008-8-19 08:39     标题: 请大侠解释一下,我也不会啊

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

什么意思啊?
我怎么不懂啊。
%~dp0*
是什么东东,我怎么看不懂,郁闷啊。。
希望得到大侠的指点,谢谢了1!

[ 本帖最后由 lixiaodaoaaa 于 2008-8-19 08:41 编辑 ]
作者: pusofalse    时间: 2008-8-19 08:48

  1.   Substitution of batch parameters (%n) has been enhanced.  You can
  2.   now use the following optional syntax:
  3.       %~1         - expands %1 removing any surrounding quotes (")
  4.       %~f1        - expands %1 to a fully qualified path name
  5.       %~d1        - expands %1 to a drive letter only
  6.       %~p1        - expands %1 to a path only
  7.       %~n1        - expands %1 to a file name only
  8.       %~x1        - expands %1 to a file extension only
  9.       %~s1        - expanded path contains short names only
  10.       %~a1        - expands %1 to file attributes
  11.       %~t1        - expands %1 to date/time of file
  12.       %~z1        - expands %1 to size of file
  13.       %~$PATH:1   - searches the directories listed in the PATH
  14.                      environment variable and expands %1 to the fully
  15.                      qualified name of the first one found.  If the
  16.                      environment variable name is not defined or the
  17.                      file is not found by the search, then this
  18.                      modifier expands to the empty string
  19.   The modifiers can be combined to get compound results:
  20.       %~dp1       - expands %1 to a drive letter and path only
  21.       %~nx1       - expands %1 to a file name and extension only
  22.       %~dp$PATH:1 - searches the directories listed in the PATH
  23.                      environment variable for %1 and expands to the
  24.                      drive letter and path of the first one found.
  25.       %~ftza1     - expands %1 to a DIR like output line
  26.   In the above examples %1 and PATH can be replaced by other
  27.   valid values.  The %~ syntax is terminated by a valid argument
  28.   number.  The %~ modifiers may not be used with %*
复制代码

More detail: call/?&for/?
作者: 新硕    时间: 2008-8-19 10:00

如果要进入第二个批处理的话,好像不能用call,不然又就回到第一个啦。




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