当前位置: 首页 > news >正文

Linux中ps/kill/execl的使用

ps命令:

ps -aus或者ps -ajx或者 ps -ef可以查看有哪些进程。加上 | grep "xxx" 可以查看名为”xxx"的进程。

ps -aus | grep "xxx" 

kill命令:
 

kill -9 pid 杀死某个进程

kill -l 查看系统有哪些信号

execl函数:

如果想在一个进程内部执行系统命令或者应用程序,优先应该想到如下方式:

先fork(),然后在子进程里面执行execl拉起可执行程序或者命令。

调用execl函数后,子进程的代码段会被替代。

但是子进程的地址空间没有变化,子进程的PID也没有变换。

函数原型:

int execl(const char *pathname, const char *arg, .../* (char  *) NULL */);

  • path :要执行程序的路径
  • 变参 arg:要执行的程序的需要的参数
  • arg:占位,通常写应用程序的名字
  • arg后面的:命令的参数
  • 参数写完写NULL 

返回值:成功,不返回。

拉起命令:

结果:

执行成功不会打印perror。

这是写的testExe.c文件:

随后生成testExe程序。

 拉起程序:

 结果:

execlp函数:

函数原型:int execlp(const char *file, const char *arg, .../* (char  *) NULL */);

  • file:执行命令的名字,根据PATH环境变量来搜索该命令
  • arg:占位
  • arg后面的:命令的参数
  • 参数写完写NULL;

返回值:成功不返回。 

用法: execlp("ls","ls","-l",NULL);
 

execl一般用于执行用户自定义的的应用程序

execlp一般用于执行系统命令,可以直接写命令名字,不写路径

http://www.lryc.cn/news/297148.html

相关文章:

  • 【web前端开发】HTML及CSS简单页面布局练习
  • 2.7日学习打卡----初学RabbitMQ(二)
  • 【工作学习 day04】 9. uniapp 页面和组件的生命周期
  • Mysql-数据库优化-客户端连接参数
  • 【十二】【C++】vector用法的探究
  • Docker 基本介绍
  • CentOS 7 安装 install abiword
  • 开源的直播平台
  • ChatGPT 变懒最新解释!或和系统Prompt太长有关
  • 书生·浦语大模型第三课作业
  • 【Redis笔记】分布式锁及4种常见实现方法
  • SpringMVC第一天
  • 如何利用腾讯工蜂提升广告推广和用户运营效率
  • 【QT+QGIS跨平台编译】之三十二:【MiniZip+Qt跨平台编译】(一套代码、一套框架,跨平台编译)
  • OLAP技术的发展及趋势简述
  • stupid_brain
  • C# BackgroundWorker的使用
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • wyh的迷宫
  • AWS云用户创建
  • 微信小程序(三十七)选项点击高亮效果
  • 通过Demo学WPF—数据绑定(二)
  • 数据湖的整体思路
  • 51单片机 跑马灯
  • 迎新年年终总结
  • 一台服务器可以支持多少TCP连接
  • svg基础(六)滤镜-图像,光照效果(漫反射,镜面反射),组合
  • 电脑数据误删如何恢复?9 个Windows 数据恢复方案
  • 【doghead】uv_loop_t的创建及线程执行
  • 云计算运营模式介绍