如何在C语言中调用脚本
如果想在c语言中调用一个单独的SHELL语句可以用system(),如system("ls");那么如果我想调用一个由若干SHELL语句语句组成的一个脚本的时候,要如何调用呢?
假设我有一个a.sh
内容如下:
***************************
#!/usr/bin/env bash
myvar="hello"
myfunc() {
myvar="one two three"
for x in $myvar
do
echo $x
done
}
myfunc
echo $myvar $x
***************************
我在C语言中要如何调用这个脚本呢??
一开始没说清楚,再补充一下。
我想实现的是把脚本里的内容写入C,最终a.sh是不存在的。
[ 本帖最后由 灰菲湮灭 于 2008-11-18 17:21 编辑 ] 你写的这个脚本再赋予其可执行权限之后和 ls 一样,都是一个可执行文件,它们的地位是平等的,都可以用 system(3) 调用。
回复 #1 灰菲湮灭 的帖子
system("./a.sh"); 就可以了啊 记得加x权限回复 #1 灰菲湮灭 的帖子
看popen的使用方法 学习了!:em02:回复 #4 eveson 的帖子
点睛之笔 回复 3# zhj1011谢谢了,我也在想这个问题
二楼和三楼的朋友说的对, 恩。system的用处是无穷的。
页:
[1]
2