从C执行命令,argv [0]中的预期结果是什么?
作者:互联网
我正在使用execv()从/ bin /运行命令,例如来自我的c程序的’ls’,’pwd’,’echo’,我想知道我应该在argv [0]中提供什么值;
const char * path = getPath();
char ** argv = getArgs();
execv(path,argv);
解决方法:
argv [0]应该是程序名称.它被传递给程序的主要功能.有些程序根据字符串argv [0]来区分它们的行为.例如,如果使用sh而不是bash调用GNU bash shell将禁用它的一些功能.最好给它传递给路径的相同值.
在linux中,argv [0]是顶级实用程序显示的进程名称(它可能来自读取/ proc /中的条目)
标签:c-2,linux,argument-passing,execv 来源: https://codeday.me/bug/20190712/1441068.html