harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

bash GNU/Linux メモ

script​/標準入力の判定(case文)

投稿日:2006年10月29日

Last Updated on 2013年4月3日 by かんりにん

[pukiwiki]

ホスト名を標準入力にて引数として追加し、ホストグループを判定する勉強用スクリプト。

ホスト名の先頭にweb、db、app、mailがあった場合はホストグループとサーバールートを出力、
ホスト名が対象外、あるいは引数が無い場合は”該当しない”旨のメッセージを出力。

-スクリプト
test.sh
#!/bin/sh

HOST=$1
TARGETDATE=`date -d ‘1days ago’ +%Y%m%d`;
TMPDIR=’/home/backup/tmp/logs’
SERVERROOT=’/home/backup/web/logs’

case $1 in
web*)
echo “hostgroup is apache web servers”
SERVERROOT=’/usr/local/apache’
;;
db*)
echo “hostgroup is mysql db servers”
SERVERROOT=’/usr/local/mysql’
;;
app)
echo “hostgroup is java application servers”
SERVERROOT=’/usr/local/tomcat’
;;
mail*)
echo “hostgroup is postfix mail servers”
SERVERROOT=’/usr/local/postfix’
;;
*)
echo “This host doesn’t belong to any group or no stdin. ”
;;
esac
echo “SERVERROOT=$SERVERROOT”

exit 0
-実行例
標準入力をつけた場合は以下の通りとなる。
$ sh test.sh web001
hostgroup is apache web servers
SERVERROOT=/usr/local/apache
標準入力が対象外のホスト、あるいは入力が無い場合は以下の通りとなる。
$ sh test.sh
This host doesn’t belong to any group.
BACKUPDIR=none

-備考
最後の”echo “SERVERROOT=$SERVERROOT””は条件式毎にいれてもよい。

[/pukiwiki]

-bash, GNU/Linux, メモ

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

no image

ZABBIXインストール(1.0)

[pukiwiki]   システム監視ツールzabbixのインストールドキュメント。 【本家サイト】 http://www.zabbix.com/ 日本語の情報はほとんどないので、サイトからダウンロー …

no image

[rsync]タイムスタンプについてメモ

同期元ホストのディレクトリのタイムスタンプ(last update)を同期先で合わせる場合のちょっとしたメモ。 rsyncを実行するホストがデータの同期元か同期先(バックアップ先)かでオプションが変わ …

no image

CentOS4

[pukiwiki] *CentOS4.* 自宅サーバをRedHat9からCentOS4へリプレースしました。 CentOS4.*でのサーバー構築ドキュメントやノウハウなどを 箇条書きでざっくりまとめ …

Linux環境でのgoogle driveクライアントをいろいろと下調べ

  これまでずっとdropbox.pyを利用してサーバーの設定ファイル、DBバックアップをDropboxにアップしたりといろいろやってきたが、無料プランでの容量の限界が近づいてきたので、サーバーのバッ …

nagios​/plugin​/SNMP​/インストール(perl版)

  [pukiwiki] **nagiosプラグイン[snmp]インストール・設定(perl版) [#a94a5cdc] **1)混合パッケージ [#z3649e5f] -参考サイト:お世話になってお …