中命令别名/功能

时间:2019-04-22 15:07:08

标签: bash function alias

由于我经常使用&& !!,所以我想知道有没有一种方法可以缩短它(现在我需要为此做很多工作)。 用例示例:

$ alias ¤¤='\&\& \!\!' # This is not a mid-command alias
$ echo a
a
$ echo b ¤¤
b
a

1 个答案:

答案 0 :(得分:2)

bash没有等效于zsh全局别名(可以在所需命令中的任意位置扩展)。 Readline宏可能更合适:

$ bind '"¤¤": "&& !!"'
$ echo a
$ echo b ¤¤
b
a

请注意,当您键入¤¤时,Readline会立即用&& !!替换这两个字符(此处很难演示)。

要确保此内容在您的外壳中始终可用,请添加

bind '"¤¤": "&& !!"'

添加到您的.bashrc文件中,或添加

$if Bash
"¤¤": "&& !!"
$endif

到您的.inputrc文件。 (请注意,.inputrc会被bash以外的程序读取,并且此宏可能不值得为其他程序定义。)