請問execv函式如何使用,and 標頭檔為何?

内核编译和嵌入式产品的设计与开发
回复
fuji65
帖子: 49
注册时间: 2009-03-12 17:09

請問execv函式如何使用,and 標頭檔為何?

#1

帖子 fuji65 » 2009-08-25 10:35

我想用execv函式來執行一個二進制可執行檔案或腳本,但execv總是返回ENOENT (-2)或 EFAULT(-14),
不知哪位大大有用過execv的?3Q!!
月光林地的猫
帖子: 37
注册时间: 2009-06-27 23:33

Re: 請問execv函式如何使用,and 標頭檔為何?

#2

帖子 月光林地的猫 » 2009-08-28 14:33

用execv重新启动一个shell,然后把你的脚本名字,作为参数,传给shell。
例如

代码: 全选

#include <stdio.h>
#include <unistd.h>
int main(){
	char *arg[]={"bash",
				"123.sh",
				0};
	execv("/bin/bash",arg);
	exit(0);
}
fuji65
帖子: 49
注册时间: 2009-03-12 17:09

Re: 請問execv函式如何使用,and 標頭檔為何?

#3

帖子 fuji65 » 2009-08-31 11:41

1.請問char *arg[]={"bash","123.sh",0};中bash是代表啥?
2.2.26.15的kernel 沒有execv只有execve,每次執行execve 總回傳 f2,請問 f2是啥意思?
3.如果shell已經啟動,還需執行execve("/bin/sh",arg)嗎?
回复