2013-02-24 89 views
1

有没有一个bash shell程序的方法,它采用命令行参数x,这将使x(C程序)进程启动?Bash shell程序启动C程序

+2

就证明了这三个完全执行不同的答案,这是一个难以理解的问题。请修改。 – 2013-02-24 23:11:05

+0

如果你想计划你的命令,你可以使用'at'或'batch'命令:at'和'batch'从标准输入或指定文件中读取将在稍后执行的命令 – 2013-02-24 23:27:10

回答

3
#!/bin/bash 
(($# != 1)) && echo "Usage: $0 num" && exit -1 
for ((c=1; c<=$1; c++)) 
do 
    ./run_c_program & 
done 
wait 
  • $1代表第一个命令行参数
  • $#代表的论据
  • $0的数量的名字脚本
  • run_c_program是C程序的可执行
  • &的C程序在后台
  • wait脚本等待C程序终止(可选)
5

这是相当简单:

#!/bin/bash 
$1 

如果您想将其余的参数作为参数传递给函数,这样做:

[email protected] 

(即foo.sh echo hi执行echo hi

如果您想窃取一些参数并通过其他参数,请使用shift

param1=$1 
shift 
echo [email protected] # contains parameters 2+ 
1

你可以尝试使用system功能

system("./script.sh");