前回に引き続き、今回のテーマも「オプション」です。今回は「getopt」などを使わずに処理します。シェルスクリプトでオプションを扱いたい場合、どのような点に注意するかも併せて考えていきましょう。
![“応用力”をつけるためのLinux再入門](https://cdn-ak-scissors.b.st-hatena.com/image/square/1c6c319714b3ce243d980d543802b694ccaa9095/height=288;version=1;width=512/https%3A%2F%2Fimage.itmedia.co.jp%2Fait%2Fseries%2F3016%2Flogo.jpg)
前回に引き続き、今回のテーマも「オプション」です。今回は「getopt」などを使わずに処理します。シェルスクリプトでオプションを扱いたい場合、どのような点に注意するかも併せて考えていきましょう。
去年のre:Invent 2016で発表された、AWS Batch。みなさん、お使いでしょうか? え、名前はシンプルなのに、案外むずかしい? であれば、自分とまったく同じ印象です。 今回は、AWS Batchを利用して、シェルスクリプトを実行するための典型的パターンをご紹介。シェルスクリプトからは、任意のスクリプト(Pythonとか、Node.js)も呼び出すことができ汎用性が高いので、AWS Batchにおけるアプリケーション処理の実装方式として、参考にしていただければと思います。 ほな、いってみよ! 構成図 今回構築する環境の概要は以下の通り。シェルは大きく2つに別れます。AWSの構成要素は非常にシンプルです。 myjob.sh ユーザーが作成するシェル。アプリケーション処理の本体はこちらに記述し、事前に任意のS3バケットにアップロードしておく。 fetch_and_run.sh my
→ 他のプログラミング言語と同様に = を使用する。 シェルスクリプトでも C言語などと同様に = を使用することで変数に値を設定することができる。ただし、C言語とは違い = の前後にスペースがあってはいけない。 また、変数名の大文字と小文字は区別されるため変数 VAR と変数 var は別物として扱われる。さらにシェル変数に「型」は存在しないので、文字列や数値を区別なく設定できる。 ポイントをまとめると以下のとおりとなる。 = を使う 値の設定時は変数名の先頭に $ を付けない ($ は参照時のみ) = の前後にスペースを入れない (前後にスペースがあるとエラー) 型は存在しない (declare コマンドや typeset コマンドで似たようなことができるが推奨はしない) 変数名の大文字・小文字は区別される (VAR と var は別物) 特に「2」は初心者が犯しがちなミスなので注意す
AWSでサーバを運用する際にはEC2からAWS CLIを使って他のAWSのサービスと連携したりすることがあると思いますが、AWS環境ならではのシェルスクリプトを集めてみました。AWS CLIのバージョンは1.7.13、Pythonのバージョンは2.6.9を使っています。私はAmazon Linuxで動作を確認しています。 目次 準備する AWS CLIのインストール AWS CLIのアップデート aws configureでセットアップする IAM roles for EC2 instancesに関して 監視系 CloudWatchでカスタムメトリクスを設定する ZabbixからCloudWatchの値を取得する プロセス監視する バックアップ系 AMIとEBSのバックアップを作成する RDSのスナップショットを作成する S3のフォルダを削除する 便利スクリプト系 Route53の自動登録
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く