Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file VBScript在远程服务器上执行批处理文件_Batch File_Vbscript_Automation_Remote Server_Jscript - Fatal编程技术网

Batch file VBScript在远程服务器上执行批处理文件

Batch file VBScript在远程服务器上执行批处理文件,batch-file,vbscript,automation,remote-server,jscript,Batch File,Vbscript,Automation,Remote Server,Jscript,朋友们,请帮助我使用VBscript代码或批处理脚本,或任何可能在远程桌面上执行批处理文件的方法 我试了很多,但没有成功 注意:不提供psexec或任何其他外部工具。我建议使用批处理文件。下载psexec,将其复制/粘贴到批处理文件中,并根据需要编辑变量。我在几个每晚的Control-M作业上使用了类似的过程 @ECHO OFF REM ***** Set path to PSEXEC.exe ***** SET PSEXEC="H:\Utilities\PsTools\psexec.exe"

朋友们,请帮助我使用VBscript代码或批处理脚本,或任何可能在远程桌面上执行批处理文件的方法

我试了很多,但没有成功


注意:不提供psexec或任何其他外部工具。

我建议使用批处理文件。下载psexec,将其复制/粘贴到批处理文件中,并根据需要编辑变量。我在几个每晚的Control-M作业上使用了类似的过程

@ECHO OFF

REM ***** Set path to PSEXEC.exe *****
SET PSEXEC="H:\Utilities\PsTools\psexec.exe"

REM ***** Set path to batch file on remote server (unc paths work)
SET BATCHFILE="C:\path\to\batch.bat"

REM ***** Set server to execute batch on
SET REMOTESERVER="\\testserver"

REM ***** PRODUCTION SERVERS *****

ECHO Executing %BATCHFILE% on %REMOTESERVER%
%PSEXEC% %REMOTESERVER% %BATCHFILE%

我通过使用windows调度器调度批处理文件实现了此解决方案,并使用以下代码触发windows调度器运行批处理文件

 string job = @"""\JobLocation\JobName""";
            string server = @"XXXXXXXXXXX";
            string user = @"Domian\XXXXXX";
            string pwd = @"XXXXXXXXXXXXXXX";
            string line = @" /run /tn " + job + " /s " + server + " /u " + user + "  /p " + pwd;

            var process = new Process();
            var startInfo = new ProcessStartInfo
            {
                CreateNoWindow = true,
                FileName = @"C:\WINDOWS\SYSTEM32\schtasks.exe",
                WindowStyle = ProcessWindowStyle.Hidden,
                Arguments = line,
                //WorkingDirectory = AppDomain.CurrentDomain.BaseDirectory,
                UseShellExecute = false,
                RedirectStandardError = true,
                RedirectStandardOutput = true
            };
            process.StartInfo = startInfo;
            process.Start();
            process.WaitForExit();
            string output = process.StandardOutput.ReadLine();
            string errors = process.StandardError.ReadLine();
WMI;