zoukankan      html  css  js  c++  java
  • c# 返回 cmd 命令的结果

    把结果作为一个整体返回:

     1 public static string ExecuteCommandSync(object command)
     2       {
     3           try
     4           {
     5               // create the ProcessStartInfo using "cmd" as the program to be run,
     6               // and "/c " as the parameters.
     7               // Incidentally, /c tells cmd that we want it to execute the command that follows,
     8               // and then exit.
     9               System.Diagnostics.ProcessStartInfo procStartInfo =
    10                   new System.Diagnostics.ProcessStartInfo("cmd", "/c " + command);
    11 
    12               // The following commands are needed to redirect the standard output.
    13               // This means that it will be redirected to the Process.StandardOutput StreamReader.
    14               procStartInfo.RedirectStandardOutput = true;
    15               procStartInfo.UseShellExecute = false;
    16               // Do not create the black window.
    17               procStartInfo.CreateNoWindow = true;
    18               // Now we create a process, assign its ProcessStartInfo and start it
    19               System.Diagnostics.Process proc = new System.Diagnostics.Process();
    20               proc.StartInfo = procStartInfo;
    21               proc.Start();
    22               // Get the output into a string
    23               string result = proc.StandardOutput.ReadToEnd();
    24               // Display the command output.
    25               return result;
    26           }
    27           catch (Exception)
    28           {
    29               // Log the exception
    30               return null;
    31           }
    32       }

    将结果按行返回:

     1 public static List<string> ExecuteCommand(object command)
     2         {
     3             try
     4             {
     5                 List<string> list = new List<string>();
     6                 // create the ProcessStartInfo using "cmd" as the program to be run,
     7                 // and "/c " as the parameters.
     8                 // Incidentally, /c tells cmd that we want it to execute the command that follows,
     9                 // and then exit.
    10                 System.Diagnostics.ProcessStartInfo procStartInfo =
    11                     new System.Diagnostics.ProcessStartInfo("cmd", "/c " + command);
    12 
    13                 // The following commands are needed to redirect the standard output.
    14                 // This means that it will be redirected to the Process.StandardOutput StreamReader.
    15                 procStartInfo.RedirectStandardOutput = true;
    16                 procStartInfo.UseShellExecute = false;
    17                 // Do not create the black window.
    18                 procStartInfo.CreateNoWindow = true;
    19                 // Now we create a process, assign its ProcessStartInfo and start it
    20                 System.Diagnostics.Process proc = new System.Diagnostics.Process();
    21                 proc.StartInfo = procStartInfo;
    22 
    23                 proc.Start();
    24                 // Get the output into a string
    25                 //string result = proc.StandardOutput.ReadToEnd();
    26                 StreamReader sr = proc.StandardOutput;//获取返回值 
    27                 string line = "";
    28                 int num = 1;
    29                 while ((line = sr.ReadLine()) != null) //按行读取
    30                 {
    31                     if (line != "")
    32                     {
    33                         //Console.WriteLine(line + " " + num++);
    34                         list.Add(line.Trim());
    35                     }
    36                 }
    37                 //return result;
    38                 return list;
    39             }
    40             catch (Exception)
    41             {
    42                 // Log the exception
    43                 return null;
    44             }
    45         }

    参考:

    C# 执行 CMD 命令并获取返回结果

     

  • 相关阅读:
    VScode+phpStudy搭建php代码调试环境
    bluekeep漏洞(CVE-2019-0708)利用
    bugku论剑场web解题记录
    upload-labs通关集
    攻防世界web新手区
    Vulnhub-XXE靶机学习
    Volatility取证使用笔记
    攻防世界WEB新手练习
    攻防世界MISC新手练习
    攻防世界CRYPTO新手练习
  • 原文地址:https://www.cnblogs.com/tommy-huang/p/15127644.html
Copyright © 2011-2022 走看看