C++ 命令行CMD 的控制与源代码
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 的控制与源代码相关推荐
- 给命令行(cmd)做一个GUI——Process的应用
命令行我想大家都用过: 今天我打算干的,就是把它弄到WinForm里来..做出来就像这样(动画) 如果你要问这蛋疼的做法有什么意义,看 所以你可以给命令行下的「DOS」程序,穿上一层WinForm的外 ...
- larvel 5.7命令行cmd常用命令
larvel 5.7命令行cmd常用命令 一.使用如下 Artisan 命令创建一个新的 TagCreateRequest: 1.创建常规类()Make 文件夹 控制器名字 例如表单请求类: php ...
- 在命令行cmd中运行带相对路径的py脚本时, 找不到路径的解决方案
症状: 直接运行py文件正常, 在命令行cmd中运行则报错 报错原因: 工作路径 与 脚本文件存放路径不统一 解决方案一: 控制台工作路径切换为文件所在路径: cd py文件所在路径 解决方案二: 在 ...
- 组策略9-禁用命令行CMD
组策略9-禁用命令行CMD 出于安全考虑有些部门需要禁用CMD的运行, 首先在组策略管理中的组策略对象里新建立一个名为"禁用CMD"的GPO,"源 Starter GPO ...
- 命令行cmd基础操作
找出cmd win +r :出现控制面板,输入cmd,点击确认即可. 命令行cmd的基础操作 (1)d: 切换到d盘 (2)cd d盘下某个文件夹名称 (3)cd 名称\名称\名称 直 ...
- Windows 命令行 (cmd) 切换盘符
Windows 命令行 (cmd) 切换盘符 MS-DOS (/ˌɛmˌɛsˈdɒs/ Microsoft Disk Operating System) is an operating system ...
- path变量、命令行cmd、进制、位权相关介绍及使用
path变量.命令行cmd.进制.位权相关介绍及使用 文章目录 path变量.命令行cmd.进制.位权相关介绍及使用 一.计算机的组成 二. windows的命令行 1.如何进入命令行? 2.命令行结 ...
- 在 命令行 (cmd)执行 Maven命令,对java工程进行打包 操作 (指定settings.xml)
目录 ■前提理解 ■扩展 1.使用纯命令行,java命令进行打包 2.pom.properties 3.在Eclipse中,[実行構成]创建文件(.launch),保存每次执行的Maven命令. ■命 ...
- Python 命令行cmd指定颜色设置
目录 · 模块 · cmd color函数(交互界面) · Python 颜色大全 · 设置颜色函数 SetConsoleTextArribute · 打印(输出) · ▲▲▲总结(代码) · 模块 ...
最新文章
- 2021年春季学期-信号与系统-第二次作业参考答案-第二小题
- 安卓通过绑定开启服务 来调用服务里的方法
- mysql创建存储函数报错:ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL...
- jQuery.treetable使用及异步加载
- java用netty做tcpserver接收c++消息_netty案例,netty4.1基础入门篇四《NettyServer收发数据》...
- arcx函数js_抖音的这个JS,怎么能运行,获取到用户的加载信息
- HDU 4283:You Are the One 区间DP好题
- [转]ASP.NET在线用户列表精确版—解决用户意外退出在线列表无法及时更新问
- 好用到叫出声!强烈推荐 10 款 Mac 软件!
- 3GPP TS 29244-g30 中英文对照 | 5.2.6	Combined SGW/PGW Architecture
- 物联网平台类型有哪些
- 冯小刚“开撕”崔永元,娱乐圈炒作就要进入3.0时代
- Ubuntu 16.04 配置 TITAN xp, CUDA 及 cuDNN
- Groundhog Chasing Death 2020牛客多校第九场(质因子分解+欧拉降幂)
- 用火狐浏览器快速扒网页图片素材
- .NET 线程 Thread 进程 Process、线程池 pool、Invoke、begininvoke、异步回调、APM、EAP、TPL、aysnc、await
- 新建项目时的Group和Artifact是什么
- 目前国内在ARM CPU上广泛采用的三种嵌入式操作系统浅析
- python 题库系统,Python可以开发Web程序,也可以管理操作系统。
- 基于区块链技术的溯源系统-总结