星期六, 9月 03, 2022

atuin

atuin 可以把指令歷史改放到 sqlite db 裡,提供了 fancy 的畫面跟功能,還蠻酷的。它在雲端有提供 sync 伺服器,可以把指令同步上去,我本來在想這會有安全疑慮吧,畢竟有些時候指令就會帶密碼。不過,atuin 已經有做加密了,放上去是安全的。

atuin sync 伺服器也可以自行架設,除了可以同步之外, sync 伺服器還有提供一個類似 github graph 的功能,可以看到活動圖,蠻有趣的。

安裝

bash <(curl https://raw.githubusercontent.com/ellie/atuin/main/install.sh)

如果想試試預設的 sync 伺服器,就先用 atuin register 來註冊

atuin register -u <USERNAME> -e <EMAIL> -p <PASSWORD>

若不需要,就匯入目前的 history

atuin import auto

設定

如果是使用 bash ,就用以下指令,把設定放到 .bashrc

curl https://raw.githubusercontent.com/rcaloras/bash-preexec/master/bash-preexec.sh -o ~/.bash-preexec.sh
echo '[[ -f ~/.bash-preexec.sh ]] && source ~/.bash-preexec.sh' >> ~/.bashrc
echo 'eval "$(atuin init bash)"' >> ~/.bashrc

若是 zsh ,就改用以下指令,把設定放到 .zshrc 裡

echo 'eval "$(atuin init zsh)"' >> ~/.zshrc

設定好,就關掉終端機,開新的終端機,或者是登出,重新再登入,設定就生效了。

使用

使用很簡單,按下 ctrl+r 或是按上,就會看到 atuin 的畫面,輸入字母,上方就會篩選出相關的指令。

那也可以打指令去找,例如找昨天下午3點以前的 ls 指令

atuin search --exit 0 --after "yesterday 3pm" ls

相當簡單。

架設 sync 伺服器的部份有空再來試好了,目前就先都以本機使用為主。

想法

其實就現在來說,使用 ctrl+r 就已經很方便,而且也不需要安裝,直接就能使用。未來會有需要集中管理指令歷史功能的強烈需求嗎?我想可能是沒有,就先用一陣子試試看好了,一周以後再來評估是否要繼續使用。

沒有留言: