bash
コマンドライン引数を取り、(Cプログラム)プロセスを開始するシェルプログラムx
のx
方法はありますか?
。
それはかなり簡単です:
#!/bin/bash
$1
残りのパラメーターをパラメーターとして関数に渡す場合は、次のようにします。
$@
(つまり、foo.sh echo hi
実行しecho hi
ます)
一部のパラメーターを盗んで他のパラメーターを渡す場合は、次を使用しますshift
。
param1=$1
shift
echo $@ # contains parameters 2+
#!/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プログラムが終了するのを待ちます(オプション)system
機能を使ってみることができます
system("./script.sh");