Bash
如何在 zshell 和 bash 中使用相同的歷史 20 別名?
似乎
history [number]
在 zshell 中是落後的,因為它正在使用fc
. 我如何history [number]
表現得像在 bash 中那樣?➜ exec bash bash-3.2$ history 3 35 history 5 36 exit 37 history 3 bash-3.2$ ➜ history 3 1 pwd 2 .. 3 mv work Documents ➜ history 3133 history 5 3134 exec bash 3135 history 3136 history 3 3137 history -3 3138 history 20
所以在 bash 中它的行為就像我期望的那樣:最後 3 個命令。但是在 zshell 中它是倒退的:前 3 個歷史命令。這很煩人,我想解決它。
到目前為止我最近的:
function history { fc -l -$1 }
但這仍然會產生從 1 開始的歷史記錄,而不是最後一個條目。
這並不像我想像的那麼困難。將此添加到我的
~/.profile
# zshell aliases history to "fc -l" # quick version alias h="fc -l -50" # last 50 # history searching function hg { echo "Searching for '$1'..." fc -l 0 | grep "$1" }
好像
bash
倒了,所以如果你翻轉數字上的標誌……$ PS1='%% ' zsh -f % echo blah blah % echo de de % echo blah blah % history() { num=$(( -1 * $1 )); builtin history $num } % history 3 2 echo de 3 echo blah 4 history() { num=$(( -1 * $1 )); builtin history $num } %