シェル

マイナンバーを全パターン出力するワンライナーを書きました

seq -w 0 99999999999 | awk '{l=split($0,ns,"");s=0;for(i=1;i<=l;++i){s+=ns[l-i+1]*((i<=6)?i+1:i-5);}d=s%11;print $0 (d<=1?0:11-d);}' awkフル活用なので面白みに欠ける。 マイナンバーのチェックディジットの計算式は 総務省令第八十五号の第5条より…

GUIアプリを端末から切り離して実行する

普通に端末からwiresharkとか叩くと、端末を閉じるとwiresharkも終了するので鬱陶しい。&付けて起動しても、なんか色々出力出るし。 wireshark < /dev/null >/dev/null 2>/dev/null & このように起動すれば端末から完全に切り離されて起動するので、端末閉じ…

svnレポジトリ以下のファイルを全検索してエディタで開くワンライナー(要 percol )

vim `svn ls -R | xargs grep -n $@ | percol | sed 's/:[^:]*$//' | sed 's/:/ +/'` これを適当な名前で PATH の通ったディレクトリに名前つけて保存するだけ。 percol は他の類似品でも多分大丈夫。

bashrcの変更を全bashプロセスに反映させる

.bashrc の先頭に trap 'source ~/.bashrc' USR1 と記述しておく。 .bashrc を編集したら、 pkill -USR1 bash とすると全てのbashプロセスで.bashrcが読み込み直される。 他にも inotifywait で .bashrc の変更を監視するとか考えたけど、それだとちょっと間…

man を vim で綺麗に見る

環境変数を以下のように設定しておくだけ。 MANPAGER="col -b -x | vim -R -c 'set ft=man' - " これでman memcpyとか叩くと こんな表示になる。もちろん環境やvimの設定によって違うが。 環境変数に設定したcolとvimのそれぞれオプションの意味は、この記事…