2013-02-24 80 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");