在Unity3D项目开发工具时需要用到SSH连接远程Linux服务器执行命令,找到SharpSSH链接库后,通过此方法就可使用。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
   /// <summary>
     /// SSH登录远程Linux服务器,并运行指令
     /// </summary>
     /// <param name="host">远程Linux服务器IP或域名</param>
     /// <param name="username">账号名</param>
     /// <param name="password">账号密码</param>
     /// <param name="commands">命令</param>
     /// <returns></returns>
     public  static  bool  RunSSHCommands(String host, String username, String password, String[] commands)
     {
         if  (commands ==  null  || commands.Length == 0)
             return  false ;
 
         try
         {
             SshExec exec =  new  SshExec(host, username);
             exec.Password = password;
 
             //XXLog.Log(String.Format("[{0}]Connecting...", host));
             exec.Connect();
             //XXLog.Log("OK");
 
             foreach  (String command  in  commands)
             {
                 if  (command ==  null  || command.Trim().Length == 0)  continue ;
 
                 string  output = exec.RunCommand(command);
                 //XXLog.Log(output);
             }
 
             //XXLog.Log("Disconnecting...");
             exec.Close();
             //XXLog.Log("OK");
 
             return  true ;
         }
         catch  (Exception e)
         {
             XXLog.Log(e.Message);
             return  false ;
         }
     }