我已经知道我可以使用该参数-l
来启动一个bash
或ksh
作为一个登录 shell,所以我不必源文件之类~/.profile
的,~/.bash_profile
等等。但是在csh
,这句话
execl("/bin/csh","csh","-l","-c","env",NULL);
是错误的,错误的信息是
Unknown option: `-l'
但我查阅了csh 手册页并发现这-l
意味着
“外壳是登录外壳。仅当
-l
指定唯一标志时才适用。”。
所以我把句子改成
execl("/bin/csh","csh","-l",NULL);
和
execl("/bin/csh","csh","-c","env",NULL);
但是当我运行程序时,它在那里暂停。能告诉我怎么解决吗?</p>