HDblack 发表于 2016-9-7 13:56:33

新手关于调用cmd命令的问题

Local $s1=1
   $s2=2
   Dim $ECC1="cmd /c & setlocal enabledelayedexpansion & set /a a=%time:~0,2%,b=a+100 &MD c:\"& $s1 &"\"& $s2 &"\2016test-%date:~0,4%%date:~5,2%%date:~8,2%!b:~-2!%time:~3,2%\pos8 & ping 127.0.0.1 -n 5 -l 1470>c:\"& $s1 &"\"& $s2 &"\2016test-%date:~0,4%%date:~5,2%%date:~8,2%!b:~-2!%time:~3,2%\pos8\ECC.txt"
Run($ECC1,@WindowsDir,@SW_HIDE );批处理脚本正常:cmd /c & setlocal enabledelayedexpansion & set /a a=%time:~0,2%,b=a+100 &MD c:\"& $s1 &"\"&
$s2 &"\2016test-%date:~0,4%%date:~5,2%%date:~8,2%!b:~-2!%time:~3,2%\pos8 & ping 10.128.20.1 -n
5 -l 1470>c:\"& $s1 &"\"& $s2 &"\2016test-%date:~0,4%%date:~5,2%%date:~8,2%!b:~-2!%
time:~3,2%\pos8\ECC-10.128.20.1.txt代码如上:
想调用cmd程序在磁盘下创建以当前日期时间为名称的文件夹,cmd命令在批处理中运行正常,但在脚本里就无法创建文件夹,大家看看是什么问题?

1361739590 发表于 2016-9-7 14:10:31

看看 " 会有影响

mars0916 发表于 2016-9-7 14:25:49

Local $s1=1
   $s2=2
   Dim $ECC1='cmd /c & setlocal enabledelayedexpansion & set /a a=%time:~0,2%,b=a+100 &MD c:\"& $s1 &"\"& $s2 &"\2016test-%date:~0,4%%date:~5,2%%date:~8,2%!b:~-2!%time:~3,2%\pos8 & ping 127.0.0.1 -n 5 -l 1470>c:\"& $s1 &"\"& $s2 &"\2016test-%date:~0,4%%date:~5,2%%date:~8,2%!b:~-2!%time:~3,2%\pos8\ECC.txt'
Run($ECC1,@WindowsDir,@SW_HIDE );最前跟最後 換成'
你試試看

HDblack 发表于 2016-9-7 14:41:03

回复 3# mars0916
还是没有反应

HDblack 发表于 2016-9-7 14:42:05

回复 2# 1361739590
改成' 以后情况想同

1361739590 发表于 2016-9-7 14:48:24

Run命令好像是这样的。
运行 DOS(控制台)命令, 请使用 Run(@ComSpec & " /c " & "commandName", "", @SW_HIDE); 不要忘了 "/c" 前面的一个空格

heroxianf 发表于 2016-9-7 15:02:56

这批处理实现的是什么功能?

HDblack 发表于 2016-9-7 15:08:47

回复 7# heroxianf
1.创建文件夹
C:\$s1\$s2\"当前时间命名文件夹"
2.在“当前时间命名文件夹”中写入ping 结果

heroxianf 发表于 2016-9-7 15:41:48

回复 8# HDblack

如果是创建以时间为名称的文件夹AU3很好完成啊,PING结果写入文件夹读取操作的话也可以改成AU3直接操作后输出有用部分。

http://www.autoitx.com/thread-53173-1-1.html你这里看下呢。
页: [1]
查看完整版本: 新手关于调用cmd命令的问题