1·启动CMD

Windows徽标键 + R 运行窗口 在编辑框输入cmd 点击确定 进入CMD 界面

CMD 命令行包含了WINDOWS API 的许多操作 可以打开文件 设置时间 调整磁盘 这许许多多的功能都离不开一个函数:system(const char* _CMD);

测试后基本上知道CMD 的流程是这样的:

getcwd -> 输入->解析->目录操作?chdir:system->输出->下一条指令

CMD 取工作路径:

getcwd函数

#include<unistd.h>

char *getcwd(char *buf,size_t size);

CMD 设工作路径:

chdir函数

#include<unistd.h>

int *chdir(char *path);

根据以上几个函数,我们就可以写出自己的CMD 了!

#include <iostream>

#include <unistd.h>

using namespace std;

int main(){

char path[64] = {0};

char* buf = NULL;

getcwd(path,sizeof(path));

system("VER"); // 输出当前版本Version

while(true){

cout<<path<<">";

cin>>buf;

if(strcmp(buf,"cd") == 0){

cout<<path<<endl<<endl;

}

else if(strcmp(buf,"cd ..") == 0){

int i = strlen(path - 1)];

while(*pch! = '\\'){

char* pch = &path[i];

i--;

path[i] = 0;

}

}

else if(strcmp(buf,"cd /")){

int i = strlen(path - 1)];

while(*pch! = ':'){

char* pch = &path[i];

i--;

path[i] = 0;

}

}

else

system(buf);

}

return 0;

}

C++ 命令行CMD 的控制与源代码相关推荐

  1. 给命令行(cmd)做一个GUI——Process的应用

    命令行我想大家都用过: 今天我打算干的,就是把它弄到WinForm里来..做出来就像这样(动画) 如果你要问这蛋疼的做法有什么意义,看 所以你可以给命令行下的「DOS」程序,穿上一层WinForm的外 ...

  2. larvel 5.7命令行cmd常用命令

    larvel 5.7命令行cmd常用命令 一.使用如下 Artisan 命令创建一个新的 TagCreateRequest: 1.创建常规类()Make 文件夹 控制器名字 例如表单请求类: php ...

  3. 在命令行cmd中运行带相对路径的py脚本时, 找不到路径的解决方案

    症状: 直接运行py文件正常, 在命令行cmd中运行则报错 报错原因: 工作路径 与 脚本文件存放路径不统一 解决方案一: 控制台工作路径切换为文件所在路径: cd py文件所在路径 解决方案二: 在 ...

  4. 组策略9-禁用命令行CMD

    组策略9-禁用命令行CMD 出于安全考虑有些部门需要禁用CMD的运行, 首先在组策略管理中的组策略对象里新建立一个名为"禁用CMD"的GPO,"源 Starter GPO ...

  5. 命令行cmd基础操作

    找出cmd win +r :出现控制面板,输入cmd,点击确认即可. 命令行cmd的基础操作 (1)d:      切换到d盘 (2)cd d盘下某个文件夹名称 (3)cd 名称\名称\名称    直 ...

  6. Windows 命令行 (cmd) 切换盘符

    Windows 命令行 (cmd) 切换盘符 MS-DOS (/ˌɛmˌɛsˈdɒs/ Microsoft Disk Operating System) is an operating system ...

  7. path变量、命令行cmd、进制、位权相关介绍及使用

    path变量.命令行cmd.进制.位权相关介绍及使用 文章目录 path变量.命令行cmd.进制.位权相关介绍及使用 一.计算机的组成 二. windows的命令行 1.如何进入命令行? 2.命令行结 ...

  8. 在 命令行 (cmd)执行 Maven命令,对java工程进行打包 操作 (指定settings.xml)

    目录 ■前提理解 ■扩展 1.使用纯命令行,java命令进行打包 2.pom.properties 3.在Eclipse中,[実行構成]创建文件(.launch),保存每次执行的Maven命令. ■命 ...

  9. Python 命令行cmd指定颜色设置

    目录 · 模块 · cmd color函数(交互界面) · Python 颜色大全 · 设置颜色函数  SetConsoleTextArribute · 打印(输出) · ▲▲▲总结(代码) · 模块 ...

最新文章

  1. 2021年春季学期-信号与系统-第二次作业参考答案-第二小题
  2. 安卓通过绑定开启服务 来调用服务里的方法
  3. mysql创建存储函数报错:ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL...
  4. jQuery.treetable使用及异步加载
  5. java用netty做tcpserver接收c++消息_netty案例,netty4.1基础入门篇四《NettyServer收发数据》...
  6. arcx函数js_抖音的这个JS,怎么能运行,获取到用户的加载信息
  7. HDU 4283:You Are the One 区间DP好题
  8. [转]ASP.NET在线用户列表精确版—解决用户意外退出在线列表无法及时更新问
  9. 好用到叫出声!强烈推荐 10 款 Mac 软件!
  10. 3GPP TS 29244-g30 中英文对照 | 5.2.6 Combined SGW/PGW Architecture
  11. 物联网平台类型有哪些
  12. 冯小刚“开撕”崔永元,娱乐圈炒作就要进入3.0时代
  13. Ubuntu 16.04 配置 TITAN xp, CUDA 及 cuDNN
  14. Groundhog Chasing Death 2020牛客多校第九场(质因子分解+欧拉降幂)
  15. 用火狐浏览器快速扒网页图片素材
  16. .NET 线程 Thread 进程 Process、线程池 pool、Invoke、begininvoke、异步回调、APM、EAP、TPL、aysnc、await
  17. 新建项目时的Group和Artifact是什么
  18. 目前国内在ARM CPU上广泛采用的三种嵌入式操作系统浅析
  19. python 题库系统,Python可以开发Web程序,也可以管理操作系统。
  20. 基于区块链技术的溯源系统-总结

热门文章

  1. Selenium WebDriver下载安装
  2. html文件用服务器打开很慢,网页打开太慢?快试试这6招!
  3. Springboot+Vue实现简单的前端后分离数据交互
  4. 【计算机网络:自顶向下方法】(一)计算机网络和英特网
  5. 记一次 .NET 某制造业 MES 系统崩溃分析
  6. Java length() 方法、length 属性和 size() 方法有什么区别?
  7. GIS技术在林业管理应用中有哪些功能?
  8. 推荐系统之基于内容推荐
  9. Linux应用编程概念
  10. 医学领域图像相关自述