复制 Terminal.app 中最后一个命令的输出

Lri*_*Lri 8 terminal bash macos

!! | pbcopy 还会再次运行命令,并且不能与交互式命令一起使用。

这依赖于提示始终是$

tell application "Terminal" to tell window 1 to history
do shell script "/bin/echo " & quoted form of result & ¬
    " | ruby -e 'puts $<.read.split(/^\\$ .*?$/)[-2][1..-1]'"
set the clipboard to result
Run Code Online (Sandbox Code Playgroud)

有人知道更好的选择吗?

Enr*_*ico 8

如果您至少使用 el Capitan,您可以使用 Cmd-shift-A 选择最后一个命令的输出,并使用 Cmd-C 复制它。不幸的是,这不适用于以前的版本。

  • 这很棒。这不仅适用于最新命令:首先手动选择任何先前命令的输出的任何部分,然后按 Cmd + Shift + A。 (4认同)
  • 这是一个真正被低估的键盘快捷键! (2认同)
  • 这改变了我的生活谢谢 (2认同)