作者noonOut (中午外出)
看板LinuxDev
标题Re: [问题] execlp的问题
时间Sun Apr 1 23:30:56 2007
※ 引述《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