コマンド履歴をスリム化してpecoでインクリメンタルサーチするとき見やすく。

最近、職場でもプライベートでも、 これみたいな感じでpecoを使ってコマンド履歴ベースでいろいろ作業してる。 これが生命線、これがないと生きられない。

Zsh - pecoを使って、コマンド履歴をインクリメンタルに絞り込んでコマンド再実行 - Qiita

ただ、↓みたいに大量にllが残ってしまっているのでなんかなあと思っていた。

QUERY>ll                                          
ll
ll
ll
mll
ll
ll
ll
ll
vim hello_world.rb
ll
ll
ll
ll
bundle install --path verndor/bundle
jruby -S bundle install --path vendor/bundle

とりあえずは以下で、.zsh_historyのコマンドが重複しているところを削除。 (ちなみに、履歴系のシェルのオプションはzshのデフォルトのまま)

#!/usr/bin/env perl

my %hash = (); 
 
while(<>) {
  print unless $hash{(split ";", $_)[1]}++;
}

重複コマンドを排除するような設定などあるみたいなので、適用してみようかな。

そういえば、.zsh_historyを変更しても、ログインし直さないとhistoryコマンドの結果には反映されなかったな。 historyのキャッシュをリフレッシュする方法がないか探してみよう。

それにしても、自分はなんか考え事するときとか無意識にll連打してるみたいだな。