Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.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
上传后在服务器端执行批处理文件:C#_C#_Ftp_Batch File - Fatal编程技术网

上传后在服务器端执行批处理文件:C#

上传后在服务器端执行批处理文件:C#,c#,ftp,batch-file,C#,Ftp,Batch File,我使用C#(FtpWebRequest)中的FTP将批处理文件传输(上载)到服务器。批处理文件有一些命令。我的要求是将批处理文件传输到服务器(我可以这样做)并执行该批处理文件 如何从客户端在服务器上执行批处理文件中的命令?我可以使用Process.Start()方法还是rsh??这是一种更好的方法,如果能链接到该示例,我们将不胜感激。上次我需要远程复制和运行批处理文件时,我使用了。但是,这需要远程计算机上的管理员权限。上次我需要远程复制和运行批处理文件时,我使用了。但是,这需要在远程计算机上具有

我使用C#(FtpWebRequest)中的FTP将批处理文件传输(上载)到服务器。批处理文件有一些命令。我的要求是将批处理文件传输到服务器(我可以这样做)并执行该批处理文件


如何从客户端在服务器上执行批处理文件中的命令?我可以使用Process.Start()方法还是rsh??这是一种更好的方法,如果能链接到该示例,我们将不胜感激。

上次我需要远程复制和运行批处理文件时,我使用了。但是,这需要远程计算机上的管理员权限。

上次我需要远程复制和运行批处理文件时,我使用了。但是,这需要在远程计算机上具有管理员权限。

您可以运行运行批处理文件的计划任务(例如每五分钟一次)。您可能需要执行一些清理任务,例如在运行批处理文件后删除它(这样它就不会无意中再次运行)

(如果您的批处理文件每次都有不同的名称…可能需要重新考虑一下。)


很好的一点是,它非常简单,使用非常可靠的Windows计划程序,不需要第三方应用程序。

您可以运行一个计划任务(比如每五分钟一次)来运行批处理文件。您可能需要执行一些清理任务,例如在运行批处理文件后删除它(这样它就不会无意中再次运行)

(如果您的批处理文件每次都有不同的名称…可能需要重新考虑一下。)


这很简单,它使用非常可靠的Windows调度程序,不需要第三方应用程序。

另一种选择是,您可以使用套接字编程,当巴斯文件完成传输时,向服务器发送命令以执行巴斯文件。我认为这是第二种选择。

另一种选择可以使用套接字编程,当bath文件传输完成后,向服务器发送命令以执行bath文件。我认为这是第二种选择。

您可以尝试使用站点FTP命令来运行该文件,但这是特定于服务器和操作系统的(即,您不能在Unix上启动.BAT文件,也不能在Windows server上启动.sh文件,而且并非所有服务器都支持通过站点命令执行外部命令)

如果这没有帮助,您必须在远程端设置一些服务器(例如SSH服务器),并在通过FTP上传后使用SSH协议连接到该SSH服务器(但如果您使用SSH,则不需要FTP-您可以使用基于SSH的SFTP)

您可以尝试使用SITE FTP命令来运行该文件,但这是特定于服务器和操作系统的(即,您不能在Unix上启动.BAT文件,也不能在Windows server上启动.sh文件,而且并非所有服务器都支持通过SITE命令执行外部命令)


如果这没有帮助,您必须在远程端设置一些服务器(例如SSH服务器),并在通过FTP上传后使用SSH协议连接到该SSH服务器(但如果您使用SSH,则不需要FTP-您可以使用基于SSH的SFTP)

执行巴斯文件的Nayan SoniSystem.Diagnostics.Process.Start(文件名、参数) 对于插座参考:
此示例(将文件.jpeg更改为.7z)并提取。抱歉限制。

Nayan Soni用于执行Bath文件
系统.Diagnostics.Process.Start(文件名、参数)
对于插座参考:

此示例(将文件.jpeg更改为.7z)并提取。抱歉限制。

我不希望使用任何软件来执行我的操作。我的批处理文件上载到Unix计算机上。有没有一种方法不使用PSExec之类的实用程序?就像那个漂亮链接的外观一样。Thanks@Joey,如果批处理文件在同一台windows计算机中,我将使用进程p=new Process();p、 StartInfo.FileName=;p、 Start();如何远程执行相同的操作???ssh、PowerShell远程处理、psexec、telnet等等。。。。这完全取决于我们谈论的另一边的操作系统。我很惊讶你竟然认为C#的本机进程处理在这里也适用。我需要在C#应用程序中完成所有这些工作。。显然,我需要一种使用C#way的方法。。任何帮助??我不希望使用任何软件来执行我的操作。我的批处理文件上载到Unix计算机上。有没有一种方法不使用PSExec之类的实用程序?就像那个漂亮链接的外观一样。Thanks@Joey,如果批处理文件在同一台windows计算机中,我将使用进程p=new Process();p、 StartInfo.FileName=;p、 Start();如何远程执行相同的操作???ssh、PowerShell远程处理、psexec、telnet等等。。。。这完全取决于我们谈论的另一边的操作系统。我很惊讶你竟然认为C#的本机进程处理在这里也适用。我需要在C#应用程序中完成所有这些工作。。显然,我需要一种使用C#way的方法。。有什么帮助吗??