如何创建Bash别名?

fan*_*ncy 178 macos bash shell

我在OSX上,我需要alias blah="/usr/bin/blah"在配置文件中放置这样的东西,但我不知道配置文件在哪里.

jay*_*ngh 260

您可以在启动脚本文件中添加一个alias或一个function.通常这是.bashrc,.bash_login.profile在您的主目录中的文件.

由于这些文件是隐藏的,因此您必须ls -a进行列出.如果你没有,你可以创建一个.


如果我没记错的话,当我买了我的Mac时,.bash_login文件就不存在了.我不得不去创造我自己,这样我可以把prompt info,alias,functions等它.

如果您想创建一个步骤,请执行以下步骤:

  1. 启动终端
  2. 输入cd ~/要转到您的主文件夹
  3. 输入touch .bash_profile以创建新文件.
  4. 编辑.bash_profile用你喜欢的编辑器(或者您也可以只open -e .bash_profile在TextEdit中打开它.
  5. 键入. .bash_profile以重新加载.bash_profile并更新您添加的任何别名.

  • 是的,在我的OSX Mavericks上,我的家庭目录中没有`.bash_profile`.创建它,为它添加别名,然后使用`启动它..bash_profile`命令工作. (9认同)
  • 太棒了,谢谢@jaypal!命令`source .bash_profile`是第5步的替代方案吗? (7认同)
  • 在OSX El Capitan` .bash_profile`工作.如果在打开终端窗口时它没有自动加载,可能是因为它是在没有可执行权限的情况下创建的.这个命令将修复它,它应该自动加载以备将来的会话:`chmod u + x .bash_profile` (3认同)

小智 30

在OS X上,您想使用〜/ .bash_profile.这是因为默认情况下,Terminal.app会为每个新窗口打开一个登录shell.

查看有关不同配置文件的更多信息以及何时使用它们: .bashrc,.bash_profile和.environment之间有什么区别?

和OSX相关:关于.bash_profile,.bashrc,应该在哪里编写别名?


Gui*_*shi 28

我只需用sublime打开zshrc,然后编辑它.

subl .zshrc
Run Code Online (Sandbox Code Playgroud)

并在sublime上添加:

alias blah="/usr/bin/blah"
Run Code Online (Sandbox Code Playgroud)

在终端运行:

source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

完成.

  • 这很困惑.如果你的shell是Bash,那么这个页面上的许多其他答案都会更加详细和有用.如果您使用Zsh而不是Bash,那么显然您应该在末尾"源.zshrc"来加载您在当前运行的shell实例中所做的更改. (4认同)

wor*_*ise 17

MacOS Catalina 及以上

Apple他们的默认 shell切换zsh,因此配置文件包括~/.zshenv~/.zshrc. 这就像~/.bashrc,但对于 zsh。只需编辑文件并添加您需要的内容;每次打开新的终端窗口时都应该获取它:

nano ~/.zshenv alias py=python

然后ctrl+x,y,然后回车保存。

这个文件似乎无论如何都会被执行(登录、非登录或脚本),所以看起来比~/.zshrc文件更好。

High Sierra 及更早版本

默认 shell 是 bash,您可以编辑文件~/.bash_profile并添加别名:

nano ~/.bash_profile alias py=python

然后ctrl+x,y,回车保存。有关这些配置的更多信息,请参阅这篇文章。最好在 中使用别名进行设置~/.bashrc,然后~/.bashrc~/.bash_profile. 在~/.bash_profile这则看起来像:

source ~/.bashrc

  • 现在 Catalina 是最新的 Mac 操作系统,这个值应该更高 (3认同)

jco*_*ado 14

在我的.bashrc文件中,默认情况下有以下行:

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi
Run Code Online (Sandbox Code Playgroud)

因此,在我的平台中.bash_aliases是默认情况下用于别名的文件(以及我使用的文件).我不是OS X用户,但我想如果您打开.bashrc文件,您将能够识别平台中常用于别名的文件.


小智 13

对于 macOS Catalina 用户:

第 1 步:创建或更新 .zshrc 文件

vi ~/.zshrc
Run Code Online (Sandbox Code Playgroud)

第 2 步:添加别名行

alias blah="/usr/bin/blah"
Run Code Online (Sandbox Code Playgroud)

步骤 3:源 .zshrc

source ~/.zshrc 
Run Code Online (Sandbox Code Playgroud)

步骤 4:通过在命令提示符下键入 alias 检查您的别名

alias
Run Code Online (Sandbox Code Playgroud)


小智 9

cd /etc
sudo vi bashrc
Run Code Online (Sandbox Code Playgroud)

添加以下内容:

alias ll="ls -lrt"
Run Code Online (Sandbox Code Playgroud)

最后重启终端.


kmi*_*ael 7

脚本和程序~/.bashrc的配置文件是和使用终端时加载的配置文件~/.bash_login.

我认为最好的办法就是把所有东西都装进去~/.bashrc.

对于您的具体问题,只需输入(这将覆盖任何现有的〜/ .bashrc):

echo "alias blah=\"/usr/bin/blah\"" >>~/.bashrc
Run Code Online (Sandbox Code Playgroud)

进入终端,~/.bashrc将使用新的alises创建一个文件.之后只需编辑文件即可添加新的别名,功能,设置等.

  • 你不应该使用`>>`而不是`>`,以便它附加到文件而不是替换它中的所有内容? (5认同)

ult*_*tum 7

它在macOS Majave上对我有效

您可以执行一些简单的步骤:

1)打开终端

2) sudo nano /.bash_profile

3)添加您的别名,例如:

# some aliases
alias ll='ls -alF'
alias la='ls -A'
alias eb="sudo nano ~/.bash_profile && source ~/.bash_profile"
#docker aliases
alias d='docker'
alias dc='docker-compose'
alias dnax="docker rm $(docker ps -aq)"
#git aliases
alias g='git'
alias new="git checkout -b"
alias last="git log -2"
alias gg='git status'
alias lg="git log --pretty=format:'%h was %an, %ar, message: %s' --graph"
alias nah="git reset --hard && git clean -df"
alias squash="git rebase -i HEAD~2"
Run Code Online (Sandbox Code Playgroud)

4) source /.bash_profile

做完了 使用和享受!


Pra*_*V R 6

  1. 回家
  2. 打开.bashrc
  3. 在文件底部创建别名

    alias alias_name='command to do'
    eg: alias cdDesktop='cd /Desktop'
    
    Run Code Online (Sandbox Code Playgroud)
  4. 保存文件

  5. 来源.bashrc

    source ~/.bashrc
    
    Run Code Online (Sandbox Code Playgroud)
  6. 打开终端(Ctrl + Alt + T)并键入cdDesktop并按Enter键