原文:封装:Cmd命令调用和常用命令

一、Cmd命令调用方法

1、静态方法调用

 class Program
{
static void Main(string[] args)
{ // Todo :打开记事本
Process.Start("notepad"); // Todo :打开路径
Process.Start(@"E:\test"); // Todo :打开文件
Process.Start(@"E:\test\test.txt"); Console.Read(); }
}

2、封装调用

    /// <summary> 执行DOS命令的扩展方法 </summary>
public static class CmdAPI
{
/// <summary> 运行DOS命令 DOS关闭进程命令(ntsd -c q -p PID )PID为进程的ID </summary>
public static string RunCmdOutPut(this string command, EventHandler endEvent = null)
{
// 啟動一個獨立進程
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Arguments = "/c " + command;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true; if (endEvent != null)
{
p.EnableRaisingEvents = true;
p.Exited += endEvent;
} // Todo 2016-11-19 :從輸出流取得命令執行結果
p.Start(); // Todo :不过要记得加上Exit要不然下一行程式执行的时候会当机
p.StandardInput.WriteLine("exit"); // 從輸出流取得命令執行結果
return p.StandardOutput.ReadToEnd(); Process.Start("notepad"); } /// <summary> 运行DOS命令 DOS关闭进程命令(ntsd -c q -p PID )PID为进程的ID </summary>
public static void RunCmd(string command, EventHandler endEvent = null)
{
// 啟動一個獨立進程
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Arguments = "/c " + command;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = false;
p.StartInfo.RedirectStandardOutput = false;
p.StartInfo.RedirectStandardError = false;
p.StartInfo.CreateNoWindow = false; if (endEvent != null)
{
p.EnableRaisingEvents = true;
p.Exited += endEvent;
} p.Start(); } /// <summary> 关掉进程 P1 进程的PID </summary>
[Obsolete("未测试")]
public static string CloseProcessByPid(this string pid)
{
return string.Format(CmdStr.CloseProcessByPid, pid).RunCmdOutPut();
} /// <summary> 执行eclipse程序 </summary>
public static string CmdEclipseByData(this string dataFullPath)
{
return string.Format(CmdStr.CmdEclipseRun, dataFullPath).RunCmdOutPut();
} }

二、常用的Cmd命令

    class CmdStr
{
/// <summary> DOS关闭进程命令(ntsd -c q -p PID )PID为进程的ID </summary>
public const string CloseProcessByPid = "ntsd -c q -p {0}"; /// <summary> D调用eclipse(eclrun eclipse) </summary>
public const string CmdEclipseRun = "eclrun eclipse {0}"; /// <summary> 查看本机网卡配置信息 "/c ipconfig /all" </summary>
public const string CmdIpConfigerAll = "/c ipconfig /all"; /// <summary> 定时关机 string.Format("/c shutdown -s -t {0}", shijian) </summary>
public const string CmdShutDown = "/c shutdown -s -t {0}"; /// <summary> 取消定时关机 "/c shutdown -a" </summary>
public const string CmdClearShutDown = "/c shutdown -a"; /// <summary> 解析域名ip地址 "/c ping {0}" </summary>
public const string CmdPing= "/c ping {0}"; /// <summary> 显示所有连接和侦听端口 "/c netstat -an" </summary>
public const string CmdNetStat = "/c netstat -an"; /// <summary> 显示路由表内容 "/c netstat -r" </summary>
public const string CmdNetStat_R = "/c netstat -r"; /// <summary> 查询本机系统 "/c winver" </summary>
public const string CmdWinver = "/c winver"; /// <summary> IP地址侦测器 "/c Nslookup" </summary>
public const string CmdNslookup = "/c Nslookup"; /// <summary> 打开磁盘清理工具 "/c cleanmgr" </summary>
public const string CmdCleanmgr = "/c cleanmgr"; /// <summary> 打开系统的注册表 "/c regedit" </summary>
public const string CmdRegedit = "/c regedit";
}

封装:Cmd命令调用和常用命令的更多相关文章

  1. 源代码管理相关命令(Git常用命令、Nuget常用命令、CMD常用命令)

    Git常用命令 源代码工具 工具名称 相关地址 Git Git for Windows VSC Visual Studio Code VSC插件(Gitlen) GitLens - Git super ...

  2. linux常用命令与系统管理常用命令

    linux命令:切换用户:开启ftp服务:service vsftpd start 开启ssh服务:service sshd start普通用户切换到超级用户:su rootlogout:(注销)un ...

  3. mysql 中启动服务的命令 、登录命令、退出命令 mysql 的常用命令

    1.cmd 以管理员执行 下面命令 启动服务 :net start mysql57 关闭 服务:net stop mysql57 查看mysql 的版本信息 : mysql -V 指定主机地址登录: ...

  4. 【命令】MongoDB常用命令记录

    如果你想创建一个“myTest”的数据库,先运行use myTest命令,之后就做一些操作(如:db.createCollection('user')),这样就可以创建一个名叫“myTest”的数据库 ...

  5. ADB常用命令(adb常用命令)

    基本用法 命令语法 adb 命令的基本语法如下: adb [-d|-e|-s <serialNumber>] <command> 如果只有一个设备/模拟器连接时,可以省略掉 [ ...

  6. Ubuntu常用命令及git常用命令

    1. CMakeLists.txt中指定OpenCV路径 set(OPENCV_DIR /***/***/opencv-2.4.9) 2. cmake工程编译安装 mkdir build cd bui ...

  7. git常用命令总结 git常用命令总结

    git常用命令总结:https://www.cnblogs.com/jackchensir/p/8306448.html 利用git提交代码 一.首先需要下载git 查看电脑是否安装git,打开终端, ...

  8. [工作需求]linux常用命令以及vim常用命令

    一.             Linux 常用命令 mkdir dirname新建文件夹 cd ~ 进入自己的家目录 cd dirname 进入名字为dirname的目录: l 显示当前文件夹下的文件 ...

  9. mysql常用命令大全 mysql常用命令总结

    原文地址:http://www.jbxue.com/db/12472.html 本文介绍下,mysql中常用的一些命令,包括创建与修改数据库.数据库中的表,mysql的权限管理命令grant.revo ...

随机推荐

  1. matplotlib 自带的几种美化样式

    1.用 matplotlib.pyplot.style.avaliable 可查看 matplotlib 自带的美化样式如下: ['bmh', 'classic', 'dark_background' ...

  2. dapi 基于Django的轻量级测试平台六 怎样使用压测功能

    QQ群: GitHub:https://github.com/yjlch1016/dapi JMeter非GUI模式下: jmeter -n -t jmx脚本 -l jtl文件 -e -o 测试报告目 ...

  3. 用java多线程模拟数据库连接池

    模拟一个ConnectionDriver,用于创建Connection package tread.demo.threadpool; import java.lang.reflect.Invocati ...

  4. swagger 配置- ssm

    swagger 配置 - ssm swagger 是一个用来看接口的工具,具体效果如下,这里用的是swagger2 1.porm.xml <dependency> <groupId& ...

  5. selenium--获取HTML源码断言和URL地址

    获取HTML源码 from selenium import webdriver import unittest class Test_source(unittest.TestCase): def Te ...

  6. BST | 1064 完全二叉搜索树

    OJ:https://www.patest.cn/contests/pat-a-practise/1064 (一)23分(3个case未过)代码 建树的规律是我瞎猜的.首先用样例数据分析. 对数据排序 ...

  7. scp 文件 : /目录: Permission denied

    Q: A: 进入目录,用root登录,修改权限为777 再进行上传即可:

  8. 详解手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版)

    转载(https://www.jb51.net/article/130560.htm) SSM(Spring+SpringMVC+Mybatis),目前较为主流的企业级架构方案.标准的MVC设计模式, ...

  9. MHA+keepalived集群环境搭建

    整个MHA+keepalived集群环境搭建 1.1. 环境简介1.1.1.vmvare虚拟机,系统版本CentOS6.5 x86_64位最小化安装,mysql的版本5.7.21,1.1.2.虚拟机器 ...

  10. Gamma展示

    团队成员简介 团队成员 角色 个人博客地址 刘峻辰 后端开发 刘峻辰 焦云鹏 后端开发 焦云鹏 赵智源 测试&服务器部署 赵智源 肖萌威 前端开发 肖萌威 杨亦鑫 前端开发 杨亦鑫 戴荣 UI ...