创build永久可执行的别名

我安装了MySQL(MAMP,Mac OS X),但每次从shell中访问时都需要用完整path调用它。 我创build了一个别名alias mysql='/Applications/MAMP/Library/Bin/mysql ,但这只会持续到terminal/ Bash会话。

什么是build立永久性别名的有效途径? (我需要能够执行来自PHP的命令)。 我应该在Bash启动脚本中设置别名(这是怎么做的?),还是编辑sudoers文件更好? (可以使用这个例子..)

谢谢 –

编辑 – 根据回答:

我只是尝试创build一个~/.bashrc并写下如下:

别名mysql ='/ Applications / MAMP / Library / bin / mysql'

但这似乎没有任何影响。 这个文件有特殊的语法吗?

Solutions Collecting From Web of "创build永久可执行的别名"

将该命令添加到~/.bashrc文件中。

为了让所有用户都可以使用,请将其添加到/etc/profile

你这样做是错误的。

/Applications/MAMP/Library/bin/到您的路径中,或者创建一个脚本来调用MySQL,并将其放置在您的路径中的bin目录中。

  • 不同的shell使用不同的点文件来存储别名。
  • 对于mac,bash shell使用.bash_profile.profile
  • 对于Ubuntu,bash shell使用.bashrc
  • 如果您使用zsh shell和ohmyzsh插件,点文件是.zshrc

传统上,要添加永久别名,您需要打开点文件并手动编写别名,如下所示:

 alias hello="echo helloworld" 

请记住点源文件的生效。 要在ubuntu的bash上输入点文件,输入source .bashrc要让别名对所有用户可用,请写入/etc/profile而不是点文件。 记得键入source /etc/profile以使新别名生效。

如果你只是想要一个临时别名,你不需要写点文件。 只需在终端上键入相同的命令( alias hello="echo helloworld )。

请注意,一旦shell关闭,通过alias命令创建的临时别名将会消失。


如果您正在查找一个命令来生成别名而不打开文本编辑器,请继续阅读。

如果您在Ubuntu上安装了ruby,则可以使用aka使用单个命令创建永久别名。

gem install aka2

例如:

 aka generate hello="echo helloworld" #will generate a alias hello="echo helloworld" aka destroy hello #will destroy the alias hello aka edit hello #will prompt you to edit the alias. 

也就是说,不需要用文本编辑器写点文件。 而且也不需要获取点文件。

在Mac上.bashrc文件不会来源,除非你把

source ~/.bashrc/etc/profile/etc/bashrc

只是想我会提到这一点。