2012-11-25 36 views
2

我想为bash cd -命令创建别名--。搜索来解决这个问题,我找到了建议使用此别名:为cd创建一个bash别名 - 命令

alias -- -="cd -" 

然而,这会导致下面的错误,如在本次会议片段:

[email protected]:~$ cd .vim 
[email protected]:~/.vim$ -- 
-bash: --: command not found 
[email protected]:~/.vim$ 

bash --version

GNU bash, version 4.2.39(2)-release (i386-apple-darwin12.2.1) 
Copyright (C) 2011 Free Software Foundation, Inc. 

任何想法?

+0

没有额外的,但正如你可以看到下面我需要另一个! – Chris

回答

3

不要打扰别名。使用功能,而不是:

--() { cd -; } 
+0

出于某种原因,最好不要使用别名(现在它正在使用由@Costi提供的答案)? – Chris

+0

别名不够灵活(例如,你不能传递参数),不提供超过函数的优点,并且更容易出错。我建议避开它们。 –

+1

@Costi'ls(){command ls -G; }'和'grep(){grep --color; }' –

7

您创建的别名似乎是-,而不是--。如果你希望它是--,你需要将其声明为:

alias -- --="cd -" 

您可以随时宣布别名列表中你的shell会话,只需键入alias

P.S.

alias无关与别名第一--序列,它只是需要的,以便为alias命令不考虑开始与-的命令选项下面的参数。

+0

谢谢,这是我之后的信息:) – simon