我有一个命令,我想在远程
Windows 2003服务器上执行.
我试过wmic,它可以工作,但显示标准输出的唯一方法是将它重定向到本地文件,然后列出本地文件(一种笨重).
我也试过psexec,但是在使用Windows 2003服务器时似乎有问题(至少它报告说最新版本没有 – 而且旧版本不可用).
我试图远离Windows rcmd实用程序,因为我认为有一个服务器组件需要安装,我不想提供对该机器的一般命令行访问.
对于允许我在远程计算机上使用特定命令的工具或实用程序是否有任何其他建议.
注意:
这是一个非常简单的例子,我试图让PsExec工作:
C:\Program Files\SysInternalsSuite>psexec \\remote-svr -i -u MyUsername D:\Public\do.bat PsExec v1.95 - Execute processes remotely Copyright (C) 2001-2009 Mark Russinovich Sysinternals - www.sysinternals.com Password: D:\Public\do.bat exited on remote-svr with error code 1.
我的示例do.bat文件很简单,只包含以下行:
copy dg.bmp dg1.bmp
源文件dg.bmp存在于远程计算机上,目标文件不存在.我对远程机器有写访问权限.
当我执行上面的PsExec命令时,do.bat文件没有运行(尽管我在远程服务器上有权限)并且我没有得到我期望的控制台输出.我喜欢使用PsExec的想法,所以如果有任何关于我可能做错的提示,我将不胜感激.
谢谢…
您对PSExec和W2k3有什么问题?我们在500 W2k3服务器环境中广泛使用这两者…
事实上,整个PSTools套件震撼了我的世界.
编辑:
这是您编辑原始票证的后续操作.
您遇到的问题是“复制”是CMD.exe的功能.它本身并不作为自己的可执行文件存在.与没有Del.exe或MD.exe等相同
如果您希望您的示例工作,您需要通过PSexec调用CMD,并将复制命令传递给它.这是一个例子:
psexec -u MyDomain\MyUsername -p MyPassword \\MyServer cmd.exe /c copy c:\sys\util\monitor_localhost.bat blah.bat
结果如下:
================================== PsExec v1.86 - Execute processes remotely Copyright (C) 2001-2007 Mark Russinovich Sysinternals - www.sysinternals.com 1 file(s) copied. cmd.exe exited on fcgwnt53 with error code 0. ==================================