memorandum

IT技術の習得を記録します

パラメーターが複数あるプログラムをシェルスクリプトから実行する

プログラムは一つだが、パラメータが複数あるとき、

$ bundle exec ruby test.rb 'aaaaa'
$ bundle exec ruby test.rb 'bbbbb'
$ bundle exec ruby test.rb 'ccccc'
$ bundle exec ruby test.rb 'ddddd'
$ bundle exec ruby test.rb 'aaaaa' && bundle exec ruby test.rb 'bbbbb'

と&&で繋げていくことも可能だが、10個以上になるとターミナルの画面もわけがわからなくなり
どこまで実行されたか管理が大変になる

シェルスクリプトでのコマンドラインの実行

このように記述したファイルをsclipts.shで保存 

bundle exec ruby test.rb 'aaaaa'
echo 'command 1 done'
bundle exec ruby test.rb 'bbbbb'
echo 'command 2 done'
bundle exec ruby test.rb 'ccccc'
echo 'command 3 done'
bundle exec ruby test.rb 'ddddd'
echo 'command 4 done'

ファイルを保存した場所で

$ chmod +x scripts.sh
$ ./scripts.sh

ファイルの実行が完了したら

echo 'command 1 done'

が標準入力で表示される