curl
コマンドを実行し、エラーが発生した場合にスクリプトを終了するシェルスクリプトを書くことは簡単です。以下のシンプルな例を参考にしてください。
#!/bin/bash
# EC2メタデータにアクセス
if ! curl -s http://169.254.169.254/latest/meta-data/ > /dev/null; then
echo "このサーバーはAWS EC2インスタンスではありません。"
exit 1
fi
echo "このサーバーはAWS EC2インスタンスです。"
説明:
#!/bin/bash
– スクリプトがBashシェルで実行されることを示します。curl -s
–-s
オプションでサイレントモードを指定し、進行状況を表示しないようにします。> /dev/null
– 標準出力を/dev/nullにリダイレクトして表示を抑えます。if !
–curl
コマンドが失敗した場合の条件文です。exit 1
– コマンドが失敗した場合、スクリプトを終了し、非ゼロの終了コードを返します。- スクリプトが成功した場合にはメッセージを表示します。
このスクリプトを保存して実行することで、AWS EC2インスタンスであるかどうかをチェックし、そうでない場合にはエラーメッセージを表示して終了します。