Bash

在腳本或互動模式下使用 !n

  • February 10, 2014

我添加到~/.bashrc以下程式碼:

test_exclamation () {
 printf %s "$READLINE_LINE" | xargs echo
}
bind -x '"\eX": test_exclamation'

我寫到 bash 提示緩衝區

$ !1700

如果我按Enter,則執行歷史中編號為 1700 的命令。如果我按Shift+ Alt+ X,我會得到一個輸出:

!1700

如何將test_exclamation功能更改為編號 1700 下的列印命令?

將其更改為

test_exclamation () {   READLINE_LINE=$( history -p "$READLINE_LINE" ) ;  }

引用自:https://unix.stackexchange.com/questions/114572