Bash を使ってワンライナーの for
ループで X window の glxgears
を &
を使ってバックグラウンドでたくさん起動しようとしたら、なんかうまくいかなかったのでメモ。
結論
;
の代わりに &
を使うこと。
最初に試した方法
for ii in `seq 1 10`; do glxgears &; done
for
ループを回して &
で複数起動しようと思ったら以下のようなエラーが出る。
bash: syntax error near unexpected token `;'
解決した方法
for ii in `seq 1 10`; do glxgears & done
どうやら &
のあとに ;
を入れているのがまずかったらしい。
余談
Bash
ではなく Zsh
を使っていれば
for ii in `seq 1 10`; do glxgears & done
# だろうが
for ii in `seq 1 10`; do glxgears &; done
# だろうが
どちらも問題なく動く