Psexec、cmd 和批处理文件
我在 winserver2008 桌面上有一个名为 a.bat 的批处理文件。
该批处理文件仅将 SessionID(来自环境变量)写入本地事件日志。
我想使用cmd远程执行它(否则SessionName不会出现)。
所以我已经尝试过,
c:\PsTools\psexec.exe \\<Server> -u test2 -p <Password> -i 2 cmd "c:\Users\test-2\Desktop\a"
或者
c:\PsTools\psexec.exe \\<server> -u test2 -p <Password> -i 2 "cmd \"c:\Users\test-2\Desktop\a\"";exit
所有这些都只是在远程计算机上打开一个终端,但不执行批处理。
有什么想法吗?
此致,
I have a batch file named a.bat on a winserver2008 Desktop.
That batch file only write the SessionID (from environment variable) to a local eventlog.
I want to execute it remotely using cmd (otherwise the SessionName doesn't appear).
so I have tried
c:\PsTools\psexec.exe \\<Server> -u test2 -p <Password> -i 2 cmd "c:\Users\test-2\Desktop\a"
or
c:\PsTools\psexec.exe \\<server> -u test2 -p <Password> -i 2 "cmd \"c:\Users\test-2\Desktop\a\"";exit
all of these just open a terminal on the remote machine but don't execute the batch.
Any ides?
Best Regards,
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在命令行中 cmd 之后使用 /c。
所以,你的第一行看起来像:
Use a /c on the command line after cmd.
So, your first line would look like:
psexec \\<服务器>; -s cmd.exe & whatever.bat
如果您尝试远程运行批处理,那么当通过终端连接在远程打开 cmd 时,您有两个选择:
xcopy \\your_computer\filepath c:\wherever Something。 bat
运行 \\computername\c$\wherever_it_is_ located
psexec \\<server> -s cmd.exe & whatever.bat
If you're trying to run a batch remotely then when cmd is open on the remote through your terminal connection, you have two options:
xcopy \\your_computer\filepath c:\wherever something.bat
run \\computername\c$\wherever_it_is_located