C++ 命令行CMD 的控制与源代码

文章介绍了如何利用C++结合WindowsAPI中的getcwd和chdir函数来实现CMD命令行的基本操作,如获取和设置工作路径,以及执行系统命令。通过创建一个简单的循环,用户可以输入指令如cd、cd..和cd/来改变路径,或者执行其他系统命令。

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;

}

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值