ふり返る暇なんて無いね

日々のメモ書きをつらつらと。メインブログに書くほどでもないことを流してます

2013-01-22日誌

SoftwareDesign シェルのエラー処理

bashは[@]で配列の中身を全部取得する

% bash
$ true | false | true
$ echo ${PIPESTATUS[@]}
0 1 0


bash -e
$?が0以外の時に終了する。ただし、パイプしたときは、検知しないので、その辺を考慮する必要がある。

zshも同様

エラーハンドリング

#! /bin/zsh

trap handler ERR

function handler () {
    echo "ERR!"
    return 255
}

演算

% echo $(( 1 + 4 ))
5
% echo $(( 4 * 4 ))
16

デバッグ

  • -x 現在実行している行を表示
  • -v 現在読み込んでいる行を表示
#オプション有効化
set -v

#オプション無効化
set +v

シェルスクリプト内で標準エラー出力をリダイレクト

#! /bin/zsh
#シェルスクリプト内で標準エラー出力をリダイレクト
exec 2> errorlog

wemuxを入れてみる。

とりあえず、入れるだけ、もう少し調べる。
https://github.com/zolrath/wemux

sudo git clone git://github.com/zolrath/wemux.git /usr/local/share/wemux
sudo ln -s /usr/local/share/wemux/wemux /usr/local/bin/wemux
sudo cp /usr/local/share/wemux/wemux.conf.example /usr/local/etc/wemux.conf
# 設定変更
sudo vim /usr/local/etc/wemux.conf

host_list=(masasuzu)

最低限のコマンド

  • 起動: wemux start
  • アタッチ: wemux attach
  • ヘルプ: wemux help
  • アタッチしているユーザを見る: wemux users