gpt4 book ai didi

c - 用C制作一个shell

转载 作者:行者123 更新时间:2023-11-30 21:43:50 24 4
gpt4 key购买 nike

我正在尝试使用 C 创建一个 shell 作为作业,但我的 execvp() 不起作用。它不执行 ls。我正在虚拟机 lubuntu 32 上工作这就是我的错误消息的输出! http://prntscr.com/6um9xm

if(pid==0){        
printf("child");
char **tokens=tokenizer(hey)//hey is from fgets. tokenizer is fine
printer(tokens);

//execute ls
execvp( ls_args[0], ls_args);

//only get here if exec failed
perror("execv failed");

return 2; //return error status }

最佳答案

您的第三个参数 (a[2]) 末尾有一个换行符。因此,ls 提示它在您的主目录下找不到以单个换行符命名的目录。修复您的命令解析,使其不包含换行符。

关于c - 用C制作一个shell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29685725/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com