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