Linux 和 Csharp,检查 Linux 中是否存在文件/文件夹,如果是,则通过 Csharp SSH 运行 MK

本文关键字:Linux Csharp SSH MK 运行 如果 检查 是否 文件 存在 文件夹 | 更新日期: 2023-09-27 18:34:17

使用 SSH.Net 我想执行以下操作: 通过 C# 和各种 ssh 包和/或 winscp 库发出命令来检查该文件是否存在于 Linux 机器上,如果该文件或文件在 Linux 机器上不存在,那么它将创建它们, 我喜欢编程的教育方面, 所以我正在提高自己,我很抱歉没有完全写出问题。

private void TestCommmand(string ip, int port, string uname, string pw)
{
    // [1]
    SshClient cSSH = new SshClient(ip, port, uname, pw);
    cSSH.Connect();
    SshCommand x = new SshCommand();
    // [2] here is where the Check needs to happen
    //
    if (condition == true)
    {
        x = cSSH.RunCommand(" mkdir /var/www/html/app/cs");
    }
    else // if condition is false
    {
        cSSH.Disconnect();
        cSSH.Dispose();
    }
    //
}

Linux 和 Csharp,检查 Linux 中是否存在文件/文件夹,如果是,则通过 Csharp SSH 运行 MK

这是我

不久前遇到的事情,所以请相信我...

下面就来看看这个小家伙吧:

if(condition == true) 

在某种程度上,你已经在回答你的问题,只是不理解语法。(检查一下

using System;
using System.IO;
namespace StackOverflowQA
{
    class Program
     {
         static void Main(string[] args)
         {
            if(File.Exists(@"C:'Exercise'Derp'"))
             {
               DoWork();
             }
             else
             {
               Console.Out.Writelne("Wrong kid died");
               Console.Write("Enter a key to exit");
               Console.Read();
             }
            private static void DoWork()
            {
              //-- if you get to this point then check out that,
             //    NuGet pkg you're working with (WinSCP) and proceed! :) 
            }
         }
      }
 }

在进入第三方程序集或库/任何东西之前,我认为您需要首先创建一个简单的控制台应用程序来查找计算机上的文件。

创建我刚刚在代码中描述的文件夹和"DoWork();"

干杯 ^_^

您可以

执行mkdir -p /var/www/html/app/cs来创建目录及其父目录(如果不存在)。

只要您有权创建不存在的第一个目录,该命令就会成功。如果只有/var/www存在,它将创建html,然后app,然后cs。如果/var/www/html/app/cs存在,它将什么也不做。

所以你的代码就是:

private void TestCommmand(string ip, int port, string uname, string pw)
{
    SshClient cSSH = new SshClient(ip, port, uname, pw);
    cSSH.Connect();
    SshCommand x = new SshCommand();
    x = cSSH.RunCommand("mkdir -p /var/www/html/app/cs");
    /// .. Continue with your work ...
}

请注意,您应该在几乎每个步骤后检查错误:SSH 连接可能会失败,命令可能会因为权限而失败,等等......