导航:首页 > 程序命令 > c调用命令行

c调用命令行

发布时间:2024-09-21 00:53:39

❶ 如何在C语言编程中调用linux系统终端下的命令

根据调用需求,可以分为两种:

一、仅执行系统命令,不需要该命令的打印结果。

这种情况可以用system函数。形式为

system(cmd);

其中cmd为char*类型的字符串,包含要执行的命令,命令的执行结果会输出到标准输出。

比如

system("mkdirtest");

这个执行,会在当前文件夹下创建test文件夹。

二、需要命令执行的打印。

虽然同样可以使用system并重定向到文件,然后打开文件读取,最终删除文件。但这样做比较繁琐,更好的做法是使用popen。

FILE *fp = popen(cmd);

执行cmd中的命令,然后可以以C文件操作方式,读取命令的输出结果。比如:

if((fp=popen("pwd","r"))==NULL)//执行获取当前目录的系统命令pwd。
{
printf("执行失败 ");//fp为NULL表示命令执行失败。
}
else
{
chars[100];
while(fgets(s,100,fp))//获取文件内容。
printf("%s",s);//输出结果。
pclose(fp);//关闭。
}

❷ 在windows命令行中如何运行c程序的文本

1、打开命令行界面:键盘win + r ,输入cmd,回车。即可打开命令行。

❸ C++中调用命令行,而命令行内包含带空格的目录名怎么办

有两个办法来解决这个问题

1)用缩写。比如c:\Program Files缩写为c:\Progra~1
再来刨根问底查查这个命名是否有规则,于是找到:
文件夹(sub-directry)名称,以前是不允许带空白的,后来允许带空白,但由于有了空白,许多命令出现二义性,于是采用双引号括起来的办法。例如:
cd Documents and Settings
按老定义 等于 CD Documents, CD 命令找不到名叫Documents 的 directry
于是采用双引号:
cd “Documents and Settings“
但用到 set PATH 时很麻烦,名字太长,双引号时常括错。于是采用8个字符缩写,即写头六个字母(略去空白),另加波浪号和1。例如:
"Documents and Settings“ -- DOCUME~1
"Local Settings" -- LOCALS~1 (注意略去空白,用了第二个词的字母,凑成六个,再加波浪号和1)。
于是,这种方法成了规定。
再来个十万个为什么的下一个,如果多个文件前6字符一样怎么办?为什么最后是1而不是0或者其他数字呢?看看这个例子
假设下面是你的C盘根目录中的文件夹:
Program Files
Progra file
Progra zhang
则三个目录分别表示为:C:\Progra~1; C:\Progra~2; C:\Progra~3;
2)绕过去,创建一个镜像。例如在cmd中输入 subst w: "C:\Documents and Settings\hopeshared"。然后就可以直接用w:\替代C:\Documents and Settings\hopeshared了

❹ VC++调用命令行怎么办system和shellexecute的问题

system("cmd /c xxx.zip xxxx.zip");

无论你用shellExecute还是用system多要加/c 这个参数 才能执行命令

❺ 在cmd中输入哪几句话把c语言编译和运行出来

1.打开命令行界面:键盘win+r,输入CMD,回车。您可以打开命令行。

阅读全文

与c调用命令行相关的资料

热点内容
志愿服务器怎么使用 浏览:131
房贷解压预约怎么操作 浏览:194
苹果下载app内购买怎么弄 浏览:219
单片机按键的原理 浏览:421
安卓如何打开设置中的悬浮窗 浏览:601
择吉日用什么app 浏览:335
安卓转苹果王者什么时间完成 浏览:812
linux文本编码格式 浏览:663
浙江阿特拉斯压缩机上门维修 浏览:627
自己创建的mc服务器崩溃怎么办 浏览:158
什么叫加密方法 浏览:203
linux时钟调度 浏览:763
光盘加密文件怎么设置 浏览:765
程序员头痛图 浏览:255
redis二级缓存源码 浏览:711
游资大咖指标源码 浏览:485
c4d的配置文件夹怎么改位置 浏览:412
和平精英服务器超时是什么意思 浏览:609
怎么查看工商银行卡绑定了哪些app 浏览:159
linux调度程序 浏览:486