日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C# 調(diào)用執(zhí)行命令行窗口 (CMD)

admin
2024年9月10日 21:42 本文熱度 953

摘要


在C#中,有時(shí)需要執(zhí)行命令行指令來(lái)完成特定的任務(wù),這個(gè)用起來(lái)特別簡(jiǎn)單,用好了靈活性極大。這可能包括運(yùn)行腳本、管理服務(wù)、獲取系統(tǒng)信息等。C# 提供了 System.Diagnostics 命名空間中的 Process 類(lèi)來(lái)啟動(dòng)和管理系統(tǒng)進(jìn)程,包括命令行窗口(cmd.exe)。

正文


應(yīng)用場(chǎng)景

  1. 自動(dòng)化構(gòu)建和部署:使用命令行工具如 MSBuild 或者 PowerShell 腳本來(lái)編譯和部署應(yīng)用程序。

  2. 系統(tǒng)管理:執(zhí)行系統(tǒng)管理任務(wù),如啟動(dòng)或停止服務(wù),管理文件和目錄等。

  3. 網(wǎng)絡(luò)操作:運(yùn)行網(wǎng)絡(luò)診斷工具如 ping、ipconfig 或自定義網(wǎng)絡(luò)操作腳本。

  4. 數(shù)據(jù)庫(kù)操作:執(zhí)行數(shù)據(jù)庫(kù)備份、還原或運(yùn)行 SQL 腳本。

  5. 第三方工具集成:調(diào)用 Git、Docker 或其他命令行工具進(jìn)行自動(dòng)化操作。

示例 1: 執(zhí)行簡(jiǎn)單命令

public class CmdExample{      public static void ExecuteCommand(string command)      {            ProcessStartInfo processStartInfo = new ProcessStartInfo("cmd", $"/c {command}")            {                  RedirectStandardOutput = true,                  UseShellExecute = false,                  CreateNoWindow = true            };
using (Process process = Process.Start(processStartInfo)) { using (StreamReader reader = process.StandardOutput) { string result = reader.ReadToEnd(); Console.WriteLine(result); } } }}

使用此方法可以執(zhí)行任何簡(jiǎn)單的命令行指令。例如,獲取當(dāng)前目錄下的文件列表:

static void Main(){      CmdExample.ExecuteCommand("dir");}

示例 2: 運(yùn)行批處理腳本

public class BatchScriptRunner{      public static void RunBatchScript(string scriptPath)      {            ProcessStartInfo processStartInfo = new ProcessStartInfo(scriptPath)            {                  RedirectStandardOutput = true,                  UseShellExecute = false,                  CreateNoWindow = true            };
using (Process process = Process.Start(processStartInfo)) { using (StreamReader reader = process.StandardOutput) { string result = reader.ReadToEnd(); Console.WriteLine(result); } } }}

調(diào)用批處理腳本 a.bat

static void Main(){      BatchScriptRunner.RunBatchScript(@"d:\a.bat");}

示例 3: 執(zhí)行具有復(fù)雜輸出的命令

public class ComplexCommandExecutor{      public static void ExecuteComplexCommand(string command)      {            ProcessStartInfo processStartInfo = new ProcessStartInfo("cmd", $"/c {command}")            {                  RedirectStandardOutput = true,                  RedirectStandardError = true,                  UseShellExecute = false,                  CreateNoWindow = true            };
StringBuilder output = new StringBuilder(); StringBuilder error = new StringBuilder();
using (Process process = new Process()) { process.StartInfo = processStartInfo; process.OutputDataReceived += (sender, args) => output.AppendLine(args.Data); process.ErrorDataReceived += (sender, args) => error.AppendLine(args.Data);
process.Start();
process.BeginOutputReadLine(); process.BeginErrorReadLine();
process.WaitForExit();
Console.WriteLine("Output:"); Console.WriteLine(output.ToString()); Console.WriteLine("Error:"); Console.WriteLine(error.ToString()); } }}
static void Main(){ ComplexCommandExecutor.ExecuteComplexCommand("ipconfig /all");}

結(jié)論

在C#中調(diào)用執(zhí)行命令行窗口可以非常靈活和強(qiáng)大,但也需要注意安全性和錯(cuò)誤處理。始終驗(yàn)證外部輸入,避免注入攻擊,并確保處理任何可能的異常和錯(cuò)誤輸出。正確使用時(shí),它可以是自動(dòng)化和系統(tǒng)集成的強(qiáng)大工具。


該文章在 2024/9/13 9:21:43 編輯過(guò)
關(guān)鍵字查詢(xún)
相關(guān)文章
正在查詢(xún)...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專(zhuān)業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車(chē)隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類(lèi)企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷(xiāo)售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶(hù)的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 激情小说免费阅读 | aⅴ中文字幕不卡 | 国产在线观看91精品2025 | 国产91玉足脚交在线播放 | 日韩电影大片手机在线观看 | 国产自产一区二区三区视频在线 | 自拍三级综合影视 | 免费在线观看国 | 99re6在线视频精品免费下载 | 精品日韩在线视频一区二区三区 | 欧美特级理论片免费看 | 国产一级特黄大片特爽 | 性开放的欧美大片黑白配 | 激情影院內射美女 | 国内一点不卡在 | 羞羞视频安装 | 老汉色影院首页 | 起碰视频在线 | 国产综合亚洲欧美日韩一区二区 | 成人日韩欧美精品 | 九九热在线视频观看这里只有精品 | 亚洲国产日韩在线观看 | 亚洲精品动漫免费二区 | 国产精品亚洲a∨天堂 | 九九热视频在线免费观看 | 亚洲日本va午夜在线电影 | 国产福利深夜视频在线观看 | 国色天香精 | 樱桃视频香蕉 | 亚洲美女又黄又爽在线观看 | 最近日本电影免费观看全集 | 国产精品亚洲无线码在线播放 | 国产成年人精品一区二区 | 亚洲人成在线影院 | 最近中文字幕mv第一季歌词 | 国产亚洲一区二区手机在线观 | 中文字幕在线观看一区二区 | 国产亚洲精在线看 | 欧美成aⅴ人高清免费观看 精品人伦一区二区三区 | 国产欧美日韩va另类在线播放 | 一区二区精品视频日本 |