创建一个bash别名,其输出是没有空格的连接

问题描述:

问题很简单。我想创建一个别名,例如alias short="echo a$1"。当我运行short k时,输出a k,但实际上我想要的是ak。我怎样才能做到这一点?创建一个bash别名,其输出是没有空格的连接

+3

我建议使用一个函数。请参阅:'help function' – Cyrus

尝试

alias short="echo a$1b" 

>> ab k 

它不工作像你认为它是。该$ 1完成了一套以别名之前完成时得到解决,因此,因此:

alias -p 
>> alias short='echo ab' 

但大局观你混淆了一个alias这是一个愚蠢的替代一个令牌与另一个和它意味着一个function以你想要在这里做的时尚参数。你可能后面的是

function short(){ echo "a$1"; } 

short k 
>> ak 

N.B.如果你已经定义了别名,不要忘记unalias它,因为别名和get在函数之前运行。

+0

感谢您的解释!真的有帮助! – thanasissdr