看板 Linux 關於我們 聯絡資訊
我的程式是寫execlp("setenv","setenv","PATH","bin/",NULL); 但是執行的時候沒反應 我猜是因為我setenv的檔案位置寫的不對 所以我必須知道setenv的檔案位置 所以我在PATH的各個檔案位置路徑用find尋找setenv 但是都找不到 甚至我直接查根目錄 find / -name "setenv" 過程中有出現一些find:permission denied 結果也找不到setenv的位置。 想請問有甚麼方法可以查setenv的位置? 還是說不能用execlp()開setenv,要用system()? (我試過寫成 system("setenv PATH bin/") 也不行) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.115.53.27 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1446369740.A.916.html
bitlife: env是程式執前行被配置好的變數,該程式最多能影響child 11/01 17:30
bitlife: process,要改變自己的env variables,簡單講DOS還可能,其 11/01 17:30
bitlife: 他有保護的OS,就早睏早眠 11/01 17:31
bitlife: 看你的文章,你對env還不是很瞭解,建議你先在shell中再開 11/01 17:32
bitlife: 新shell,然後設env variables,再exit child shell,看看母 11/01 17:32
bitlife: shell有看到什麼鬼? 這概念在working directory也類似 11/01 17:33
nullspace: stdlib.h 裡有 setenv() 可用 11/01 17:48
bitlife: 第2行更正:要改變自己的 -> 要改變parent的 11/01 19:20
Vdragon: 可以請您先把 shell 內部命令、環境變數、子 process 的 11/01 19:46
Vdragon: 概念搞清楚嗎? 11/01 19:46
Microscft: 請你不要再問蠢問題了 問題再蠢都回答你了 結果你刪掉 11/01 23:18
Microscft: 要是我現在還是板主 一定把你永久水桶 11/01 23:19