1 Star 0 Fork 0

杨谨徽/代码托管

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
c3.6.c 944 Bytes
一键复制 编辑 原始数据 按行查看 历史
杨谨徽 提交于 2023-10-21 14:29 +08:00 . add c3.6.c.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char *dir[64], *myargv[64]; // assume at most 64 parameters
char cmd [128];
int main(int argc, char *argv[], char *env[])
{
int i, r;
printf("THIS IS PROCESS %d IN %s\n", getpid( ), argv[0]);
if(argc < 2){
printf("Usage: a.out command [options]\n");
exit(0);
}
printf("argc = %d\n", argc);
for(i=0; i<argc; i++) // print argv[ ] strings
printf("argv[%d] = %s\n", i, argv[i]);
for(i=0; i<argc-1; i++) // create myargv[ ]
myargv[i] = argv[i+1];
myargv[i] = 0; // NULL terminated array
strcpy(cmd, "/bin/"); // create /bin/command
strcat(cmd, myargv[0]);
printf("cmd = %s\n", cmd); // show filename to be executed
int r = execve(cmd, myargv, env);
// come to here only if execve( ) failed
printf("execve( ) failed: r = %d\n", r);
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/SHIBATORI/code-hosting.git
git@gitee.com:SHIBATORI/code-hosting.git
SHIBATORI
code-hosting
代码托管
master

搜索帮助