Shell のコマンド実行回数を数える
Posted by yoosee on Debian at 2008-04-19 22:00 JST
1
Shell History | Weboo! Returns.
このネタは定期的に出てくるけど、自分では書いたことが無かった気がするので試しに。awk の切り出しは extended history で保存している都合で、切り出しカラムを $2 から $4 に変えている。直近1000回。
% history-all|tail -1000|awk '{a[$4]++ } END{for(i in a){print a[i] " " i}}' |sort -rn|head
95 lv
59 ls
51 edic
50 ruby
48 cd
43 rm
40 mv
38 sudo
33 jdic
32 w3medic, jdic はそれぞれ dic コマンドを 英和・和英 で起動するための alias。普段使っているzshでは 横着プログラミング 第3回: 履歴マニア にあるように過去の履歴をひたすら蓄積しているので、その約2万回分でカウント。
% history-all|awk '{a[$4]++ } END{for(i in a){print a[i] " " i}}' |sort -rn|head
1431 lv
1212 google
1062 sudo
960 ls
860 edic
694 w3m
688 cd
657 rm
614 mv
569 grepなんだかやけに sudo が多いような…。ちなみに google と言うのはコマンドラインから w3m に google 検索パラメータを投げるだけのプログラム。
#!/usr/bin/perl
my $arg = join("+", @ARGV);
my $q=`echo $arg | nkf -w`;
system("w3m \"http://www.google.com/search?lr=lang_ja&q=$q\"");コンソール上で生活していると、これが意外と便利。Debian での terminal 環境 utf-8 移行に関する覚書
Posted by yoosee on Debian at 2007-12-29 14:00 JST
1
Debian lenny/sid での utf-8 環境移行メモ
サーバを入れ替えたタイミングで、なんとなしに terminal 環境を今までの euc-jp 中心から utf-8 に切り替えたのだが、結構あちこち変更するハメになったので、まだ完璧ではないが設定を記録しておく。文字コードの問題はまだしも、East Asian ambiguous char width 周りの問題が鬱陶しい上にスマートで包括的な解決方法が無い。最新の環境にしたのに Bad Knowhow が増えるというのは困ったもんだ。locale: /etc/locale.gen に以下の行が無い場合は追加して locale-gen を実行
ja_JP.UTF-8 UTF-8zsh: .zshrc
export LANG=ja_JP.UTF-8 export OUTPUT_CHARSET=utf-8 export LV="-Ou8"screen: .screenrc
defencoding UTF-8vim: .vimrc
set termencoding=utf-8 set fileencodings=iso-2022-jp,cp932,utf-8,japan set ambiwidth=doubleemacs21 では mule-ucs パッケージを入れて un-define を require する。emacs22 では無くても utf-translate-cjk-mode があるので(CJKだけなら)一応使える。
emacs21/22: .emacs
(when (<= emacs-major-version 21) (require 'un-define)) (set-language-environment "Japanese") (set-terminal-coding-system 'utf-8) (set-keyboard-coding-system 'utf-8) (set-buffer-file-coding-system 'utf-8) (set-selection-coding-system 'utf-8) (setq default-buffer-file-coding-system 'utf-8) (prefer-coding-system 'utf-8)これで概ね問題ないが、ambiguous char width を回避するために Emacs22 + UTF-8 における文脈依存な文字幅の問題について のような設定を入れておく。
w3m
特に設定しなくても LANG(LOCALE) に追従して「表示用文字コード」が Unicode (UTF-8) になってくれた。しかし画面表示とカーソル位置がずれていたり画面にゴミが残ったり(再描画すると直る)と、鬱陶しいことになっている。
Gnome, gnome-terminal
特に設定しなくても .xsession から X を LANG=ja_JP.UTF-8 で起動したら対応した。ただ困ったことに、gnome-terminal で utf8 の EastAsian Ambiguous char width 問題の解決策が見当たらない。VTE_CJK_WIDTH を設定する方法は etch では機能せず。仕方がないので xterm -cjk_width ないし mlterm -a 2 の方を使う方針にする。mlterm の方が antialias が綺麗なんだけど、URL link 等の右クリックメニュー機能が無くなったのがちょっと痛い。
PuTTY on Windows
設定から Window > Transrations を [UTF-8] に、Treat CJK ambiguous character as wide をチェック。PuTTY Tray を使っているけどこれで特に問題は無い。CJK以外の多国語を使う場合・terminal の文字コードが混在する場合には問題が出るのかもしれない。
参考
Debian sid の zsh が日本語対応
Posted by yoosee on Debian at 2006-01-23 23:42 JST
1
zsh が日本語対応
いつの間にか zsh が日本語対応したようで、日本語一文字をちゃんと一文字として認識している。対応したように見えるのは 4.3.0-dev-2-1 (on Debian sid) で、今まで通りの方は 4.2.5-7 (on Debian sarge) という感じ。Changelog の 4.3.0-dev-2-1 - Better UTF-8 support.これだろうか。
zsh の biff 機能
Posted by yoosee on Debian at 2004-12-23 23:42 JST
1
zsh の biff 機能
さくらのレンタルサーバに自分で $HOME/local の下に入れた zsh を使っているのだが、事あるたびにzsh: permission denied: /var/mail/yooseeと言われてしまうのが鬱陶しい。さくらの共有サーバでは 1 つの Unix アカウントに複数のメールアドレスが割り当てられており、$HOME/Mailbox/(mailuser)/maildir/ が mail path になり、/var/mail の permission は閉じているようだ。
UNIX今日の技/zsh を参考に、zsh を --enable-maildir-support 付きで recombile した上で
export MAILPATH="/home/yoosee/MailBox/postmaster/maildir/"としておいた。まぁこのサーバでメールは基本的に受けないので MAILCHECK=0 にしておいても良さそうだが、どのみちエラーメッセージが出なければ良いのでこれで良かろう。
2
Google ...
当然のように今回も Google で検索したのだが google://zsh /var/mail -> もしかして: csh /var/mail/と言うのはどうなんだ。

