.Net使用SSH.NET通過SSH訪問Linux主機

使用了SSH.NET庫,添加引用dll至項目,以下代碼顯示了點擊按鈕後SSH鏈接Linux主機執行命令並返回命令執行結果

 protected void btnExcute_Click(object sender, EventArgs e)
        {
            string server = ServerAddr.Text;
            string username = UserName.Text;
            string password = Password.Text;
            string command = Command.Text;
            
            StringBuilder result = new StringBuilder();
            try
            {
                using (var client = new SshClient(server, username, password))
                {
                    try
                    {
                        client.Connect();
                        result.Append(client.RunCommand(command).Execute() + "\r\n");
                        QAResult.Text = result.ToString();
                        client.Disconnect();
                    }
                    catch (Exception e1)
                    {
                        result.Append(e1.Message + "\r\n");
                    }
                }
            }
            catch (Exception e1)
            {
                result.Append(e1.Message + "\r\n");
                QAResult.Text = result.ToString();
            }
        }


以下代碼演示了從本級拷貝文件到Linux主機

private void TestTranferFiles()
        {
            string server = ServerAddr.Text;
            string username = UserName.Text;
            string password = Password.Text;
            string command = Command.Text;
            var scp = new ScpClient(server, username, password);
            scp.Connect();
            scp.Upload(new DirectoryInfo(@"d:\aaaa"), "/home/zy"); //將d:\\aaaa下的所有文件上傳
            scp.Disconnect();
        }



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章