wscript和cscript之间的区别
cscript和wscript有什么区别? 哪一个最适合在Windows中进行Telnet和FTP自动化?
在Windows中,可执行文件是控制台应用程序或Windows应用程序(或SFU或本机应用程序,但在这里无关紧要)。
内核检查可执行文件中的标志以确定哪个标志。
当开始使用CreateProcess
WinAPI函数时,如果它是一个控制台应用程序,内核将为其创build一个控制台窗口,如果父进程没有,则将STDIN
, STDOUT
和STDERR
stream附加到控制台。
如果它是Windows应用程序,则不会创build任何控制台, STDIN
, STDOUT
和STDERR
将默认closures。
WSCRIPT.EXE
和CSCRIPT.EXE
几乎完全相同,除了一个被标记为Windows应用程序,另一个被标记为控制台应用程序(猜猜是哪个方向!)。
所以答案是:如果你想让你的脚本有一个控制台窗口,使用CSCRIPT.EXE
。 如果您希望它没有控制台窗口,请使用WSCRIPT.EXE
。
这也会影响一些行为,如WScript.Echo命令。 在一个CSCRIPT.EXE
这写一行到控制台窗口。 在WSCRIPT.EXE
它显示一个消息框。
为您的应用程序,我build议CSCRIPT.EXE
。 我想你也应该看看PuTTY和PLink,你也应该看到这里:
- 使用Windows脚本主机从WshShell.Exec捕获输出