C语言可以利用system()
函数来调用系统命令行。一般情况下,system()
函数会启动一个新的进程来执行传入的命令,然后等待该进程结束后返回。在使用system()
函数时,需要先包含头文件<stdlib.h>
。
函数原型
int system(const char *command);
参数说明
command
:需要执行的命令字符串,可以是系统命令如ls
、dir
、ping
等,也可以是用户自定义的脚本命令。
返回值
- 如果
command
为NULL,则返回0。 - 如果执行成功,返回子进程的退出状态。
- 如果调用命令失败或没有可用的进程,则返回-1。
示例1
#include <stdlib.h> // 包含system函数
int main()
{
system("echo Hello World!"); // 执行echo命令,输出"Hello World!"
return 0;
}
以上代码将会在控制台输出Hello World!
。
示例2
#include <stdlib.h> // 包含system函数
int main()
{
system("notepad"); // 打开记事本
return 0;
}
以上代码将会打开Windows系统自带的记事本应用程序。
在使用system()
函数时,需要注意命令注入问题。尽可能使用本质安全的语言实现功能,确保传入system()
函数的参数是安全的,避免command
参数被注入恶意代码。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言利用system调用系统命令行详情 - Python技术站