导航:首页 > 程序命令 > 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调用命令行相关的资料

热点内容
12306算法 浏览:626
单片机驱动小马达 浏览:98
pythoncookbook27 浏览:516
c的指针和python 浏览:186
python写sftp 浏览:957
读文pdf 浏览:507
pythonnumpy内积 浏览:782
linux硬盘模式 浏览:15
怎么查安卓的空间 浏览:589
linux命令复制命令 浏览:115
劳动法里面有没有带工资算法的 浏览:456
如何在u盘里拷解压软件 浏览:689
oracle数据库登陆命令 浏览:614
python自动化运维之路 浏览:400
eclipsejava教程下载 浏览:987
tita搜索app怎么配置 浏览:263
oracle的连接命令 浏览:1002
基于单片机的恒温水壶 浏览:884
鸿蒙系统文件夹怎么换背景 浏览:296
b站动画算法 浏览:712