execve函数的介绍与使用
#include<stdio.h>
#include<unistd.h>
int main()
{
char *filename[]={"./BP",NULL};//BP是c文件编译链接后产生的可执行文件,目的是打印一条语句
char *envp[]={0,NULL};//如果依赖于新环境变量,这里才需要改
execve("/root/BP",filename,envp);//字符串是文件的路径需要具体到该运行文件名,直到文件夹貌似识别不了,或者命令的路径
/*注意,把下面的三个注释遇到去掉,后面的ls命令也无法执行,因为*execve执行后,相当于结束了当前的程序,切换到execve里面的那个程序*去了*/
// char *filename1[]={"ls","-al","/root",NULL};//命令和参数,记得要加NULL
// char *envp1[]={0,NULL};
// execve("/bin/ls",filename1,envp1);
return 0;
}
//BP.c
#include<stdio.h>
int main()
{
printf("this is c process\n");
return 0;
}
运行结果如下
没修改前的运行结果
[22:41:10] gcc execvetest.c -o execvetest
[22:41:18] gcc BP.c -o BP
[22:41:24] ./execvetest
this is c process
注释掉前三行,并且去掉后面的注释,运行结果如下
[22:45:05] gcc execvetest.c -o execvetest
[22:45:11] gcc BP.c -o BP
[22:45:23] ./execvetest
total 64
dr-xr-x—. 15 root root 4096 May 10 21:06 .
dr-xr-xr-x. 17 root root 224 Apr 30 02:52 ..
-rw——-. 1 root root 314 Apr 30 07:08 .ICEauthority
-rw——-. 1 root root 3769 May 10 18:33 .bash_history
-rw-r–r–. 1 root root 18 Dec 28 2013 .bash_logout
-rw-r–r–. 1 root root 176 Dec 28 2013 .bash_profile
-rw-r–r–. 1 root root 208 May 10 18:19 .bashrc
drwx——. 10 root root 194 Apr 30 07:09 .cache
drwx——. 15 root root 276 Apr 30 07:09 .config
-rw-r–r–. 1 root root 100 Dec 28 2013 .cshrc
drwx——. 3 root root 25 Apr 30 06:53 .dbus
-rw——-. 1 root root 16 Apr 30 07:08 .esd_auth
drwx——. 3 root root 19 Apr 30 07:08 .local
-rw-r–r–. 1 root root 129 Dec 28 2013 .tcshrc
-rwxr-xr-x. 1 root root 8512 May 10 20:55 BP
drwxr-xr-x. 2 root root 6 Apr 30 07:08 Desktop
drwxr-xr-x. 2 root root 6 Apr 30 07:08 Documents
drwxr-xr-x. 2 root root 6 Apr 30 07:08 Downloads
drwxr-xr-x. 2 root root 6 Apr 30 07:08 Music
drwxr-xr-x. 2 root root 6 Apr 30 07:08 Pictures
drwxr-xr-x. 2 root root 6 Apr 30 07:08 Public
drwxr-xr-x. 2 root root 6 Apr 30 07:08 Templates
drwxr-xr-x. 2 root root 6 Apr 30 07:08 Videos
-rw——-. 1 root root 2742 Apr 30 02:52 anaconda-ks.cfg
drwxr-xr-x. 2 root root 4096 May 10 22:45 bp
-rw-r–r–. 1 root root 2750 Apr 30 06:55 initial-setup-ks.cfg
-rw——-. 1 root root 2033 Apr 30 02:52 original-ks.cfg
execve函数的介绍与使用的更多相关文章
- php常用Stream函数集介绍
php常用Stream函数集介绍 作者: 字体:[增加 减小] 类型:转载 时间:2013-06-24 本篇文章是对php中的常用Stream函数集进行了详细的分析介绍,需要的朋友参考下 ...
- Signal ()函数详细介绍 Linux函数
http://blog.csdn.net/ta893115871/article/details/7475095 Signal ()函数详细介绍 Linux函数 signal()函数理解 在<s ...
- JavaScript function函数种类介绍
JavaScript function函数种类介绍 本篇主要介绍普通函数.匿名函数.闭包函数 1.普通函数介绍 1.1 示例 ? 1 2 3 function ShowName(name) { ...
- C语言之函数的介绍
函数的介绍 遇到的问题: 1.代码看起来特别多,不简洁 2.修改起来非常麻烦,需要所有用到的地方都修改 函数就可以解决上述这两个问题 函数可以理解为一个打包带,就是把一段代码打包起来,用到的时候只要写 ...
- ConnectString ()函数的介绍
ConnectString ()函数的介绍: connectstring 函数主要负责数据库的连接工作 Public Function ConnectString() As String ...
- Signal ()函数详细介绍 Linux函数(转)
Signal ()函数详细介绍 Linux函数 收藏人:紫火神兵 2012-09-27 | 阅:5659 转:22 | 来源 | 分享 signa ...
- Python入门之函数的介绍/定义/定义类型/函数调用/Return
本篇目录: 一. 函数的介绍 二. 函数的定义 三. 定义函数的三种类型 四. 函数调用的阶段 五. Return返回值 ======================================= ...
- Oracle自我补充之trunc()函数使用介绍
oracle trunc函数使用介绍 核心提示:oracle trunc函数使用介绍 1.TRUNC(for dates) TRUNC函数为指定元素而截去的日期值. 其具体的语法格式如下: TRUNC ...
- loadrunner 脚本开发-web_custom_request函数详细介绍
脚本开发-web_custom_request函数详细介绍 by:授客 QQ:1033553122 c语言版本: int web_custom_request(const char *RequestN ...
随机推荐
- 自己写了一个解析json为table的工具类
还需要完善的包括,css的封装,触发事件,数据的获得处理: <!DOCTYPE html> <html> <head> <meta charset=" ...
- react全家桶-路由
/src目录下新增一个pages目录,用于存放渲染页面的组件 在/src/pages中新增一个Add.js文件 /src 下的index.js 路由:import React from 'react' ...
- 源码学习:一个express().get方法的加载与调用
刚刚接触express,它的中间件确实把我搞得头晕.get的回调中要不要加next?不加载还会执行下一个中间件么?给get指定'/'路径是不是所有以'/'开头的访问在没有确切匹配时都能执行?use件又 ...
- C++基础知识:构造与析构
1.构造函数的定义: C++中的类可以定义与类名相同的特殊成员函数这种与类名相同的成员函数叫做构造函数构造函数在定义时可以有参数,但是没有任何返回类型的声明 2.构造函数的调用: 一般情况下C++编译 ...
- spin lock自旋锁 双链表操作(多线程安全)(Ring0)
通过spin lock自旋锁 ,为每个链表都定义并初始化一个锁,在需要向该链表插入或移除节点时不使用前面介绍的普通函数,而是使用如下方法: ExInterlockedInsertHeadList(&a ...
- 一步一步开始FPGA逻辑设计 - 高速接口之PCIe(转)
reference: https://blog.csdn.net/jackxu8/article/details/53288385 这篇文章主要针对Xilinx家V6和K7两个系列的PFGA,在Lin ...
- 虚拟机中扩展linux系统存储空间
reference: https://blog.csdn.net/greenapple_shan/article/details/52799631 https://blog.csdn.net/lyd1 ...
- DevExpress WinForms v18.2新版亮点(二)
行业领先的.NET界面控件2018年第二次重大更新——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExpress WinForms v1 ...
- Word2Vec实现原理(Hierarchical Softmax)
由于word2vec有两种改进方法,一种是基于Hierarchical Softmax的,另一种是基于Negative Sampling的.本文关注于基于Hierarchical Softmax的改进 ...
- python 爬虫数据存入csv格式方法
python 爬虫数据存入csv格式方法 命令存储方式:scrapy crawl ju -o ju.csv 第一种方法:with open("F:/book_top250.csv" ...