linux - 在 linux 中执行上一个命令的最后一行输出

标签 linux shell

如何通过快捷方式在 linux bash 终端中执行上一条命令的最后一行输出?

例如:

$ tree 
The 'tree' is currently not installed. You can install it by running: 
sudo apt-get install tree

我要复制执行 sudo apt-get install tr​​ee

最佳答案

如果最后一行可以安全运行,一个简单的命令,并且不包含空格或引号或 shell 需要解析/理解的任何其他内容,那么这应该可以工作(尽管您需要为此重新运行第一个命令).

$(!! 2>&1 | tail -n 1)

话虽如此,我根本不推荐这样做。如果您复制并粘贴或再次键入它,它会更简单(更安全并支持更复杂的命令)。

虽然您无法获得显示输出的最后一行,因此您需要重新运行该命令。

您的终端可能支持快捷方式,让您可以复制和粘贴文本。 GNU screen 可以做到这一点。我相信 rxvt-unicode 可能会通过 perl 脚本支持这一点。

关于linux - 在 linux 中执行上一个命令的最后一行输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26736973/

相关文章:

arrays - 嵌套 for 循环行为 - shell 脚本

linux - 如何使用 shell 脚本创建数据并将其插入新文件

mysql - 动态 Shell 变量替换

linux - CentOS 6.5如何将ppid为 '1'的进程调到前台?

linux - 可以让多个 git 用户以 root 身份登录吗?

linux - ApacheBench 结果到文件

c - 仅在满足依赖关系时才加载共享库

php - 如何在 PHP 中引用文档根目录以上的文件夹?

bash - 一段时间后 bash shell 中的退格键行为变为 ^H

python - 在后台启动程序,并在其中一个程序因退出代码而死亡时立即将其杀死