小编Ser*_*sta的帖子

使用先前命令输出中的文本

编辑 2015 年 4 月:如果您有同样的问题,我建议您也查看http://xiki.org/


我知道这不是终端的工作方式,但我发现自己经常希望有一种简单的方法来使用文本(复制、修改等),这些文本已经存在于我的终端窗口历史记录中,来自之前的一些命令输出。

我是这样想象的:

我正在我的 bash shell 中输入一个命令,但我意识到我需要输入一些已经出现在屏幕上方几行的内容。我可以伸手去拿鼠标并选择它,但我讨厌那样。此刻我真正希望的是我的整个终端变成一个巨大的 Vim 缓冲区,所有这些:提示、我输入的命令以及这些命令的输出。一切。然后我可以跳几行,也许编辑一下,然后猛拉一些文本。然后,返回 bash shell 模式并将我拉到的任何内容粘贴到当前命令行中。

我知道有一些选择:

  • 自然地,将我需要的文本直接从某个命令的输出传送到一个文件,或者直接传送到下一个命令。但是为此,您必须提前计划或重新执行历史记录中的命令(假设输出在调用之间不会改变)。

  • 到达鼠标并选择要复制的文本。跛脚,烦人,我希望我没有这样做,(这不是 GUI stackexchange 站点,是吗?=)

  • 使用我的 (Mac OS X) 终端应用程序的“将文本导出为...”选项,并将终端文本保存到文件中。然后打开文件并使用它。差不多,但是为什么要执行保存到磁盘上的文件的步骤?

所以问题是:在这种情况下你会怎么做?在这种情况下,是否有任何技巧、工具、外壳功能可能有用?您只是辞职使用鼠标还是重新输入您需要输入的内容?

可能是问题在于我不是在以“unix 方式”做事,但是拜托,这是 2010 年,我无法轻松复制距光标几行远的一些文本?

command-line osx bash io-redirection

16
推荐指数
3
解决办法
4627
查看次数

curl -o 的 wget 成语是什么?

所以我在一些函数中使用代码,比如

if [ ! -e $DOWNLOADS/$1 ]; then
    echo_run curl -L http://$4/$5/$1 -o $DOWNLOADS/$1
fi
Run Code Online (Sandbox Code Playgroud)

我想知道如何在没有卷曲的情况下实现同样的目标?

shell bash wget curl

2
推荐指数
1
解决办法
708
查看次数

标签 统计

bash ×2

command-line ×1

curl ×1

io-redirection ×1

osx ×1

shell ×1

wget ×1