Archive for 7月, 2011

timezone修正について

金曜日, 7月 29th, 2011

他人が作ったシステムだとtimezoneが適当なところになっていたりします。

そんな時に日本の時間に合わせるやり方。

$date

Fri Jul 29 05:07:45 EDT 2011

まずは、ファイルがあるか確認。
ls /usr/share/zoneinfo/Asia/Tokyo
rm /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

ntpdate 210.173.160.27

$date

Fri Jul 29 18:08:48 JST 2011

めでたし

sedについて

金曜日, 7月 29th, 2011

2回以上ググったものは書いていくことにしよう。そうしよう。

指定行の置換、追記、挿入など。

##置換の場合

sed -i.bak -e  “72s/FALSE/${SLAVE_ON}/” config.php

config.phpの72行目を指定変数に置換

 

 

##追記の場合

#SlaveDBのIPを_dsn.phpに入れ込む
cat <<EOF > /tmp/sed_file

6a

$db_slave_host = “${SLAVE_DB_IP}”;

EOF

6行目に$db_slave_host = “${SLAVE_DB_IP}”;を追加する設定をファイルに吐き出す。
sed -f /tmp/sed_file /tmp/_dsn.php

先ほどのファイルの内容を指定ファイルへ実行する。

/tmp/_dsn./phpの6行目に追加されることになります。

 

##挿入の場合

sed -i.bak -e  “72i/FALSE/${SLAVE_ON}/” config.php

getoptsについて

金曜日, 7月 29th, 2011

 

hoge.shに引数つけて実行する場合

while getopts “ah:” OPT

do

case $OPT in

a ) T_SERV=”all” ;;

h ) T_SERV=”specify” ;;

*  ) echo “Usage: $CMDNAME [-a] [-h <jg Number>]” 1>$2          exit 1 ;;

esac

done

こんな感じで。

hoge.sh -a

hoge.sh -h 20