我正在尝试创建一个函数,该函数将从当前终端回显上一个到最后一个命令。这是预期的输出(这里我称之为所需的函数f
):
$ history 1
history 1
$ f
history 1
附带问题:history(1)
当前终端的历史记录保存在哪里。我知道,当终端会话结束时,历史记录通常会保存在$HISTFILE
(在我的情况下设置为~/.bash_history
)。但我想知道history(1)
当前运行终端的历史记录在哪里。
答案1
找到了解决办法:
f()(echo $(history 2 | head -n1 | cut -d' ' -f2-))
fc
或按照 G-Man 的建议使用:
f()(fc -ln -1)
测试:
$ echo 123*
123*
$ f
echo 123*