我有以下bat文件,它分析文件大小超过10000kb(好吧,这不是很大,但它目前正在测试。然后我希望它提示一个消息框并打开P:\bogfiles
目录但是我的批处理不这样做,它只想完成一个移动文件的任务。
当找到大于X(或我们的测试示例中10000kb)的文件时,如何让多个函数在彼此的coneseeion中运行?
pushd c:\Myfolder
md P:\bigfiles2
for %%a in (*.*) do if %%~za gtr 10000 move %%a P:\bigfiles2
答案 0 :(得分:0)
就像巴厘岛C所说,你的问题并没有反映你的代码。您声明您的脚本除了移动文件之外不想执行任何其他任务。您的代码似乎没有任何其他任务要完成。
如果你问如何获得它所以你可以让它做多个命令,有几种方法。您可以将它们放在一个块中(这是最常用的方法),也可以滥用&符号(&)。 e.g
pushd c:\Myfolder
md P:\bigfiles2
for %%a in (*.*) do if %%~za gtr 10000 (
move %%a P:\bigfiles2
msg * "Is this what you were referring to as a a message box?"
%SystemRoot%\explorer.exe "P:\bogfiles"
)
或者
pushd c:\Myfolder
md P:\bigfiles2
for %%a in (*.*) do if %%~za gtr 10000 move %%a P:\bigfiles2 & msg * "This is very messy code." & %SystemRoot%\explorer.exe "P:\bogfiles"
最底层的示例几乎应该永远不会,因为它会使您的代码对大多数其他程序员来说无法读取。