おぼえがき

おぼえがき

bash trap リセット

2007-02-15 | bash
bash trap リセット


次のようなファイルがある
-----------------------
#/bin/bash

function _trap(){
 echo "error";
}

trap _trap 0 1 2 3 15

A="a"

if [ $A != "a" ]
then
 echo "invalid"
 exit
fi

echo "success"

exit;
-----------------------

これで、失敗すると、
invalid
error
ってな感じで、trapが動く。
でも、正常系の場合でも
success
error
って、出てしまう。

trapをリセットしたい・・・
ってことで

----一部抜粋------
echo "success"
trap 0 #### ←←←←
exit;

ってやれば、trapがリセットできる。

trapのシグナル番号については、
http://www.geocities.jp/geo_sunisland/signal_and_trap.html
が、よくまとまってる。

bash 色づけする

2007-02-15 | bash
たとえば、エラーメッセージとかで色をつけてメッセージを
表示したい。

echo -e ¥033[1;31m ここに、メッセージ ¥033[0m"

ちなみに、echo -e の -eは、


-e string 中の、バックスラッシュでエスケープされた文字の解釈を有効
  にする。


ちなみに、sedで色をつけるように置換したかったんだけど、
echo -e $(sed -e "s/$PTN/¥¥¥033[1;36m&¥¥¥033[0m/g")

ってなる

詳細:
http://www.linux.or.jp/JF/JFdocs/Bash-Prompt-HOWTO-5.html