Re: [問題] execlp的問題

看板LinuxDev作者 (中午外出)時間18年前 (2007/04/01 23:31), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《batista630 (努力工作!!)》之銘言: : ※ [本文轉錄自 C_and_CPP 看板] : 作者: batista630 (努力工作!!) 看板: C_and_CPP : 標題: [問題] execlp的問題 : 時間: Sun Apr 1 20:57:34 2007 : execlp ( "/bin/ls" , "ls" , NULL ) : 上面那個涵式的功用可以將當前資料夾的檔案列出 : 有幾個不懂的地方 : 若是我要使用的指令是ls -al,我把"ls" 換成 "ls -al"好像沒有用 : 我把"/bin/ls" 換成 "/bin/ls -al"也沒有用 : 所以結論是我不太懂execlp這個涵式的 我有找過書 也找過網站 : 解釋都像文言文一般的難懂 而且找到的參數都是五個 : 為什麼要有 "bin/ls" : 有了"bin/ls" 後面為什麼又要再重複一次"ls" 可以解釋一下嗎 1 #include <unistd.h> 2 3 int main(){ 4 execlp("/bin/ls", "ls", "-la", NULL); 5 return 0; 6 } 這個呼叫的第一個參數是執行檔的檔案名稱,只是抓到檔案,後面才開始傳入參數 第二個參數也就是傳給執行檔的第一個參數 對執行檔來說,第一個參數(是參數陣列的[0],也是) 是讓自己執行的那段命令 第二個參數以後,才會開始做一些事情,所以有可能執行檔是從第二個參數開始解讀 execl 系列的函數是把參數當成一個 List,最後都是用 NULL 收尾 -- 一個Debian使用者的札記 http://plnote.blogspot.com/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.67.162.19
文章代碼(AID): #163z0q2l (LinuxDev)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #163z0q2l (LinuxDev)