将前一个命令的参数传递给当前命令

将前一个命令的参数传递给当前命令

有时我想获取前一个命令的参数并将其应用到当前命令。

以下是一个例子

$ cat foo.txt
$ vim foo.txt

我想找到一个快捷方式,而不必输入 vim foo.txt

答案1

我经常使用 Bash 命令yank-last-arg、快捷键M-.Esc+ .。这会将上一个历史记录条目中的最后一个参数复制到当前位置的当前行中,以便您可以检查和编辑该参数。

答案2

解决方案是使用!$

例子:

vim !$

要获取最后一条命令中的最后一个参数,请使用 `!foo:$ ,如下所示

cp foo bar
!cp:$ foobar
#This will copy foo to bar, and then bar to foobar

您也可以使用以下语法

cp foo bar
!!:$

http://www.thegeekstuff.com/2011/08/bash-history-expansion/

相关内容