文档章节

excel()函数

souldepth
 souldepth
发布于 2014/04/08 18:49
字数 1261
阅读 93
收藏 7

execl(执行文件) 相关函数 fork,execle,execlp,execv,execve,execvp 表头文件 #include<unistd.h> 定义函数 int execl(const char * path,const char * arg,....); 函数说明 execl()用来执行参数path字符串所代表的文件路径,接下来的参数代表执行该文件时传递过去的argv(0)、argv[1]……,最后一个参数必须用空指针(NULL)作结束。 返回值 如果执行成功则函数不会返回,执行失败则直接返回-1,失败原因存于errno中。 范例 #include<unistd.h> main() { execl(“/bin/ls”,”ls”,”-al”,”/etc/passwd”,(char * )0); } 执行 /*执行/bin/ls -al /etc/passwd */ -rw-r--r-- 1 root root 705 Sep 3 13 :52 /etc/passwd  

execlp(从PATH 环境变量中查找文件并执行) 相关函数 fork,execl,execle,execv,execve,execvp 表头文件 #include<unistd.h> 定义函数 int execlp(const char * file,const char * arg,……); 函数说明 execlp()会从PATH 环境变量所指的目录中查找符合参数file的文件名,找到后便执行该文件,然后将第二个以后的参数当做该文件的argv[0]、argv[1]……,最后一个参数必须用空指针(NULL)作结束。 返回值 如果执行成功则函数不会返回,执行失败则直接返回-1,失败原因存于errno 中。 错误代码 参考execve()。 范例 /* 执行ls -al /etc/passwd execlp()会依PATH 变量中的/bin找到/bin/ls */ #include<unistd.h> main() { execlp(“ls”,”ls”,”-al”,”/etc/passwd”,(char *)0); } 执行 -rw-r--r-- 1 root root 705 Sep 3 13 :52 /etc/passwd  

execv(执行文件) 相关函数 fork,execl,execle,execlp,execve,execvp 表头文件 #include<unistd.h> 定义函数 int execv (const char * path, char * const argv[ ]); 函数说明 execv()用来执行参数path字符串所代表的文件路径,与execl()不同的地方在于execve()只需两个参数,第二个参数利用数组指针来传递给执行文件。 返回值 如果执行成功则函数不会返回,执行失败则直接返回-1,失败原因存于errno 中。 错误代码 请参考execve()。 范例 /* 执行/bin/ls -al /etc/passwd / #include<unistd.h> main() { char * argv[ ]={“ls”,”-al”,”/etc/passwd”,(char) }}; execv(“/bin/ls”,argv); } 执行 -rw-r--r-- 1 root root 705 Sep 3 13 :52 /etc/passwd  

execve(执行文件) 相关函数 fork,execl,execle,execlp,execv,execvp 表头文件 #include<unistd.h> 定义函数 int execve(const char * filename,char * const argv[ ],char * const envp[ ]); 函数说明 execve()用来执行参数filename字符串所代表的文件路径,第二个参数系利用数组指针来传递给执行文件,最后一个参数则为传递给执行文件的新环境变量数组。 返回值 如果执行成功则函数不会返回,执行失败则直接返回-1,失败原因存于errno 中。 错误代码 EACCES

  1. 欲执行的文件不具有用户可执行的权限。
  2. 欲执行的文件所属的文件系统是以noexec 方式挂上。 3.欲执行的文件或script翻译器非一般文件。 EPERM 1.进程处于被追踪模式,执行者并不具有root权限,欲执行的文件具有SUID 或SGID 位。 2.欲执行的文件所属的文件系统是以nosuid方式挂上,欲执行的文件具有SUID 或SGID 位元,但执行者并不具有root权限。 E2BIG 参数数组过大 ENOEXEC 无法判断欲执行文件的执行文件格式,有可能是格式错误或无法在此平台执行。 EFAULT 参数filename所指的字符串地址超出可存取空间范围。 ENAMETOOLONG 参数filename所指的字符串太长。 ENOENT 参数filename字符串所指定的文件不存在。 ENOMEM 核心内存不足 ENOTDIR 参数filename字符串所包含的目录路径并非有效目录 EACCES 参数filename字符串所包含的目录路径无法存取,权限不足 ELOOP 过多的符号连接 ETXTBUSY 欲执行的文件已被其他进程打开而且正把数据写入该文件中 EIO I/O 存取错误 ENFILE 已达到系统所允许的打开文件总数。 EMFILE 已达到系统所允许单一进程所能打开的文件总数。 EINVAL 欲执行文件的ELF执行格式不只一个PT_INTERP节区 EISDIR ELF翻译器为一目录 ELIBBAD ELF翻译器有问题。 范例 #include<unistd.h> main() { char * argv[ ]={“ls”,”-al”,”/etc/passwd”,(char *)0}; char * envp[ ]={“PATH=/bin”,0} execve(“/bin/ls”,argv,envp); } 执行 -rw-r--r-- 1 root root 705 Sep 3 13 :52 /etc/passwd  

execvp(执行文件) 相关函数 fork,execl,execle,execlp,execv,execve 表头文件 #include<unistd.h> 定义函数 int execvp(const char *file ,char * const argv []); 函数说明 execvp()会从PATH 环境变量所指的目录中查找符合参数file 的文件名,找到后便执行该文件,然后将第二个参数argv传给该欲执行的文件。 返回值 如果执行成功则函数不会返回,执行失败则直接返回-1,失败原因存于errno中。 错误代码 请参考execve()。 范例 /请与execlp()范例对照/ #include<unistd.h> main() { char * argv[ ] ={ “ls”,”-al”,”/etc/passwd”,0}; execvp(“ls”,argv); } 执行 -rw-r--r-- 1 root root 705 Sep 3 13 :52 /etc/passwd

本文转载自:

共有 人打赏支持
souldepth
粉丝 4
博文 62
码字总数 36976
作品 0
厦门
高级程序员
怎样学好excel函数?

很多人认为excel很简单。说这种话的只有两种人:一种是excel高手,二种是还没有入门的菜鸟。但我今天说的不是笼统的excel,而是excel中的函数功能。如果你已经有想法要系统学习函数时,说明你...

曾贤志
2016/02/02
0
0
【视频】oeasy教你玩转Excel2007视频教程

excel函数、excel数据、excel排序、excel学习、excel透视、excel使用、excel技巧、excel应用、excel教程、excel很好玩、excel用法。 Excel常见使用误区,一门课程同时学会软件用法和正确工作...

么么哒lalala
2016/01/07
23
0
【视频】循序渐进学Excel 2007系列视频教程

《循序渐进学Excel 2007》系列视频教程共分22集,约6个半小时,系统地介绍了Excel 2007各方面功能的基础知识,还专门分享了许多Excel高手的学习经验,是广大Excel初级用户不可多得的理想学习...

么么哒lalala
2016/01/07
9
0
基于 poi 的 Excel 操作组件--Excel4J

Excel4J 是基于 poi 的 excel 操作组件,大大减少代码量,提高开发效率。 基于注解 @ExcelField(title = "学号", order = 1)private Long id;@ExcelField(title = "姓名", order = 2)privat...

Crab2Died
2017/06/16
3.8K
8
介绍一款开源的类Excel电子表格软件

Excel一直以霸主的地位,占据了Windows桌面表格软件市场No 1,与此同时,Office套装产品几乎成为了IT行业的标配办公技能。有无类似Excel的桌面程序,绿色版,实现基本的数据编辑功能呢? 假如...

葡萄城控件技术团队
2014/10/09
2.8K
2

没有更多内容

加载失败,请刷新页面

加载更多

搬瓦工镜像站bwh1.net被DNS污染,国内打不开搬瓦工官网

今天下午(2018年10月17日),继搬瓦工主域名bandwagonhost.com被污染后,这个国内的镜像地址bwh1.net也被墙了。那么目前应该怎么访问搬瓦工官网呢? 消息来源:搬瓦工优惠网->搬瓦工镜像站b...

flyzy2005
今天
1
0
SpringBoot自动配置

本篇介绍下,如何通过springboot的自动配置,将公司项目内的依赖jar,不需要扫描路径,依赖jar的情况下,就能将jar内配置了@configuration注解的类,创建到IOC里面 介绍下开发环境 JDK版本1.8 spr...

贺小五
今天
3
0
命令行新建Maven多项目

参考地址 # DgroupId 可以理解为包名# DartifactId 可以理解为项目名mvn archetype:generate -DgroupId=cn.modfun -DartifactId=scaffold -DarchetypeArtifactId=maven-archetype-quickst......

阿白
今天
1
0
OSChina 周四乱弹 —— 上帝对我单身年限的惩罚越来越长了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @达尔文:分享张卫健的单曲《身体健康》 《身体健康》- 张卫健 手机党少年们想听歌,请使劲儿戳(这里) 昨天是重阳节咯, 可惜小小编辑总是晚...

小小编辑
今天
12
1
django rest framework 外键序列化方法与问题总结

django rest framework 外键序列化方法与问题总结 当借口中需要出现一对多关系的时候,我们可以用rest_framwork的序列化功能来处理,代码如下. # models.pyfrom django.db import modelscl...

_Change_
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部