如何在C语言编程中调用linux系统终端下的命令
来源:互联网 发布:淘宝客服不说话怎么办 编辑:程序博客网 时间:2024/06/04 23:41
system(执行shell 命令)
相关函数 fork,execve,waitpid,popen
表头文件 #include<stdlib.h>
定义函数 int system(const char * string);
函数说明 system()会调用fork()产生子进程,由子进程来调用/bin/sh-c string来执行参数string字符串所代表的命令,此命令执行完后随即返回原调用的进程。在调用system()期间SIGCHLD 信号会被暂时搁置,SIGINT和SIGQUIT 信号则会被忽略。
返回值 如果system()在调用/bin/sh时失败则返回127,其他失败原因返回-1。若参数string为空指针(NULL),则返回非零值。如果system()调用成功则最后会返回执行shell命令后的返回值,但是此返回值也有可能为system()调用/bin/sh失败所返回的127,因此最好能再检查errno 来确认执行成功。
附加说明 在编写具有SUID/SGID权限的程序时请勿使用system(),system()会继承环境变量,通过环境变量可能会造成系统安全的问题。
范例 #include<stdlib.h>
main()
{
system(“ls -al /etc/passwd /etc/shadow”);
}
执行 -rw-r--r-- 1 root root 705 Sep 3 13 :52 /etc/passwd
-r--------- 1 root root 572 Sep 2 15 :34 /etc/shadow
些文档来自下边的链接,如果是学linux,下边的链接请保存,一定会有用的。
http://man.chinaunix.net/develop/c&c++/linux_c/default.htm
- 如何在C语言编程中调用linux系统终端下的命令
- linux 下c语言调用终端命令
- Linux下调用系统终端命令popen()
- linux C程序中调用shell终端的命令
- linux C程序中调用shell终端的命令
- linux C程序中调用shell终端的命令
- 用c语言程序实现系统的cp命令 在linux下调用syscalls.h头文件
- C语言中系统函数在linux下的使用
- Linux菜鸟的入门-终端环境中C语言编程
- Linux系统下的c语言编程
- linux 下c语言调用终端命令----笛风读书笔记系列
- 如何在C语言中调用shell命令
- 如何在C语言中调用shell命令
- 如何在C语言中调用shell命令
- 如何在C语言中调用shell命令
- 如何在C语言中调用shell命令
- 如何在C语言中调用shell命令
- 如何在C语言中调用shell命令
- Linux下Socket编程(转)
- Linux 下Socket编程基础(转)
- 【iOS-Cocos2d游戏开发之三】CCScene切换的所有特效(28种)(转)
- A*(AStar)或者也叫A星算法的寻路问题
- 跟男朋友分手了,想挽回应该怎么做
- 如何在C语言编程中调用linux系统终端下的命令
- Objective-C中的SEL、IMP和Class类型(转)
- cocos2d的常用动作及效果总结之一: Basic actions(转)
- 面向对象的23种设计模式简介
- 纯jdbc代码开发
- 使用 UITableView 创建表格应用——从plist文件加载并显示数据(转)
- 在已排序的NSArray中搜索字符串(转)
- 数据库连性池性能测试(hikariCP,druid,tomcat-jdbc,dbcp,c3p0)
- NSString字符串常用方法(转)