封装: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命令调用和常用命令的更多相关文章
- 源代码管理相关命令(Git常用命令、Nuget常用命令、CMD常用命令)
Git常用命令 源代码工具 工具名称 相关地址 Git Git for Windows VSC Visual Studio Code VSC插件(Gitlen) GitLens - Git super ...
- linux常用命令与系统管理常用命令
linux命令:切换用户:开启ftp服务:service vsftpd start 开启ssh服务:service sshd start普通用户切换到超级用户:su rootlogout:(注销)un ...
- mysql 中启动服务的命令 、登录命令、退出命令 mysql 的常用命令
1.cmd 以管理员执行 下面命令 启动服务 :net start mysql57 关闭 服务:net stop mysql57 查看mysql 的版本信息 : mysql -V 指定主机地址登录: ...
- 【命令】MongoDB常用命令记录
如果你想创建一个“myTest”的数据库,先运行use myTest命令,之后就做一些操作(如:db.createCollection('user')),这样就可以创建一个名叫“myTest”的数据库 ...
- ADB常用命令(adb常用命令)
基本用法 命令语法 adb 命令的基本语法如下: adb [-d|-e|-s <serialNumber>] <command> 如果只有一个设备/模拟器连接时,可以省略掉 [ ...
- Ubuntu常用命令及git常用命令
1. CMakeLists.txt中指定OpenCV路径 set(OPENCV_DIR /***/***/opencv-2.4.9) 2. cmake工程编译安装 mkdir build cd bui ...
- git常用命令总结 git常用命令总结
git常用命令总结:https://www.cnblogs.com/jackchensir/p/8306448.html 利用git提交代码 一.首先需要下载git 查看电脑是否安装git,打开终端, ...
- [工作需求]linux常用命令以及vim常用命令
一. Linux 常用命令 mkdir dirname新建文件夹 cd ~ 进入自己的家目录 cd dirname 进入名字为dirname的目录: l 显示当前文件夹下的文件 ...
- mysql常用命令大全 mysql常用命令总结
原文地址:http://www.jbxue.com/db/12472.html 本文介绍下,mysql中常用的一些命令,包括创建与修改数据库.数据库中的表,mysql的权限管理命令grant.revo ...
随机推荐
- mysql数据库之主从复制+双主--MMM
mysql复制:在主数据库中,前端用户每执行一个写操作/语句,都会在二进制日志中保存一个事件,把这个事件从mysql的服务器中3306端口发送给从服务器,从服务器把这个事件接受下来,接受下来先保存在本 ...
- UDP基础
UDP主要特点: (1)UDP是无连接的,发送数据不需要建立连接,减少了开销和发送数据之前的时延. (2)UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持连接状态表. (3)UDP面向报 ...
- Latex使用过程中的一些总结
本文主要总结在使用Latex过程中遇到的一些问题及解决方案. 一:关于参考文献 1.如何在paper同一处用\cite命令同时引用多篇文献? 用\cite{bibtex1}\cite{bibtex2} ...
- request.user怎么来的
1.登录认证(auth认证登录后login后设置了session等信息包含用户的pk) >>>>> 2.用户再次请求登录的时候,通过 ...
- Scrapy笔记04- Selector详解
Scrapy笔记04- Selector详解 在你爬取网页的时候,最普遍的事情就是在页面源码中提取需要的数据,我们有几个库可以帮你完成这个任务: BeautifulSoup是python中一个非常流行 ...
- 知识点5 C++保存txt文件
简单示例 #include <windows.h> #include <fstream> #include <iostream> #include <stri ...
- ESA2GJK1DH1K升级篇: 升级STM32 预热: 单片机定时 使用 http 获取云端文本文件里面的内容,然后显示在液晶屏
前言: 实现功能概要 STM32使用AT指令控制Wi-Fi以TCP方式连接咱上节安装的Web服务器,然后使用http的get协议获取云端文本文件里面的内容, 然后把获取的数据显示在OLED液晶屏. ...
- Intellij Idea 星云常用配置工具箱
1. 软件配置篇 1.1 关闭默认打开最近的工程选项 1.2. 修改快捷键 1.3 修改字体 1.4 创建类模板 效果如下: 1.5 创建接口模板 效果同上 2. 插件篇 1.1 省略Getter a ...
- python paramiko模块简介及安装
一:简介 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 由于使用的是python这样的能够跨平台运行的语言,所以所有python支 ...
- SDOI 2019 R2 摸鱼记
其实并没有什么动力来写这篇游记,毕竟呢,明明已经做好了被吊打的心理准备,可是当 Day 2 挂到没分时,当看到自己在高一里还排名二十时,还是有些,有些难言的滋味.学长们该走的真的都走了,就要只剩下 z ...