它不应该只是一个简单的命令吗?复制 0%.BAT 文件夹?我在一个文件夹中有一个批处理文件,该文件夹位于桌面上的另一个文件夹中(桌面 > 临时 > 活动 > test.bat)。在最后的批处理文件中,我添加了这个:
COPY %0.BAT Temp
所以基本上我想复制它以将其自身复制到父文件夹而不运行它。还有一件事,如何将批处理文件命令的输出重定向到 nul 设备?
它不应该只是一个简单的命令吗?复制 0%.BAT 文件夹?我在一个文件夹中有一个批处理文件,该文件夹位于桌面上的另一个文件夹中(桌面 > 临时 > 活动 > test.bat)。在最后的批处理文件中,我添加了这个:
COPY %0.BAT Temp
所以基本上我想复制它以将其自身复制到父文件夹而不运行它。还有一件事,如何将批处理文件命令的输出重定向到 nul 设备?
您想将批处理文件复制到 2 个文件夹,对吗?这个怎么样?
@echo off
copy %0 ..\..\temp >nul
如果要将命令的标准输出重定向到任何地方,请使用 >nul。使用 @echo off 关闭所有输出。
更新以解释 %0 是什么:
运行批处理文件时,“%0”或“%1”之类的值是指传递给批处理文件的参数。值 %0 是批处理文件本身,值 %1 是传递给批处理文件的第一个参数,%2 是第二个参数,依此类推。例如,如果您有一个 FOO.BAT 文件,其中包含:
echo 1st arg: '%0'
echo 2nd arg: '%1'
echo 3rd arg: '%2'
如果你跑了:
C:\foo.bat hello world
输出将是:
1st arg: 'foo.bat'
2nd arg: 'hello'
3rd arg: 'world'
试试这个:
copy "%0.bat" ..\>nul
一点点信息:如果一个* .bat文件想要将自己复制到另一个文件夹,你可以通过放置代码来做到这一点:copy >nul *.bat ... \ ... \ ... \