我希望能够在后续命令中使用上次执行的命令的结果.例如,
$ find . -name foo.txt
./home/user/some/directory/foo.txt
Run Code Online (Sandbox Code Playgroud)
现在让我们说我希望能够在编辑器中打开文件,或删除它,或者用它做其他事情,例如
mv <some-variable-that-contains-the-result> /some/new/location
Run Code Online (Sandbox Code Playgroud)
我该怎么做?也许使用一些bash变量?
更新:
为了澄清,我不想手动分配东西.我所追求的是内置的bash变量,例如
ls /tmp
cd $_
Run Code Online (Sandbox Code Playgroud)
$_保存上一个命令的最后一个参数.我想要类似的东西,但是使用最后一个命令的输出.
最后更新:
赛斯的答案非常有效.要牢记几件事:
touch /tmp/x第一次尝试解决方案时当我"找到50local.policy | xargs vim"时,我收到错误"Vim:Warnung:Die Eingabe kommt nicht von einem Terminal"(翻译:Vim:警告:输入不是来自终端).
我可以用vim成功编辑但是在我关闭之后我的终端表现得很奇怪(我不能输入字母,当我点击进入shell提示只是重复.当我用"xargs gedit"做它时它不会产生那些问题.
我使用Ubuntu 11.10与Gnome 3和Gnome-Terminal 3.0.1.