首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

施用execl运行Unix Shell执行命令注意点

2012-07-05 
使用execl运行Unix Shell执行命令注意点有时使用execl执行某些含有通配符的命令的时候需要记住Unix Shell(

使用execl运行Unix Shell执行命令注意点
有时使用execl执行某些含有通配符的命令的时候需要记住Unix Shell(sh, bash等),但是可能会遇到以下问题。

使用以下形式可正确运行得到结果
execl("/bin/bash", "bash", "-pc", cmdString, NULL);

1. 不要自己在cmdString中加引号
bash运行的时候自己加上引号,所以不要自己加上引号,否则运行的命令会被认成带引号的,一般会出现 "No such file or directory"的错误。

2. 加上'-p'选项,保证euid和egid不被设置成uid和gid(shell在两者不一致时的默认行为)

热点排行