我正在製作自己的shell並設置了fork/exec的內容來執行程序。對於沒有'/'的命令,我搜索帶有可執行文件的目錄的PATH環境。但是,當我嘗試在shell中使用clear時,告訴我TERM環境變量未設置。我想知道是否有事情做與此:unix「clear」TERM環境變量未設置
execve(args[0], args, environ);
其中ENVIRON =
char* environ[] = {NULL};
有什麼我需要把在那裏?不希望使用execvp。任何幫助表示讚賞
是的,它與此有很大關係。您需要在環境中包含TERM和其他值 - HOME,PATH立即啓發。檢查POSIX的最小設置。 –