---
title: "Bash alias 与魔法"
description: "我在用户目录下单独放了一个文件 ~/.aliases，用来存放我所有的 bash alias。我很常用 alias，也经常新增，所以写了一个 bash function 来随手添加…"
canonical: https://oozou.com/til/bash-aliases-and-magic-46
locale: zh-Hans
date: 2020-10-13
topic: shell
---

# Bash alias 与魔法

> 我在用户目录下单独放了一个文件 ~/.aliases，用来存放我所有的 bash alias。我很常用 alias，也经常新增，所以写了一个 bash function 来随手添加…

Published: 2020-10-13 · Topic: [shell](https://oozou.com/zh-Hans/til-topics/shell) ([markdown](https://oozou.com/zh-Hans/til-topics/shell.md))

我在用户目录下单独放了一个文件 ~/.aliases，用来存放我所有的 bash alias。我很常用 alias，也经常新增，所以写了一个 bash function 来随手添加 alias。

```shell
addalias() {
  echo 'alias '$1'="'$2'"' >> ~/.aliases
  source ~/.aliases
}
```

现在你可以直接在终端里添加 alias，而且在当前 session 和所有新开的 session 中都能用……
*shell
$ addalias foo 'echo "bar"'*

如果我发现自己反复用到某些命令，就会给它建个 alias
*shell
alias g='git'
alias b='bundle'
alias be='bundle exec'
alias bu='bundle update'
alias r='bin/rails'
alias rr='bin/rails routes'
alias migration='bin/rails generate migration'
alias migrate='bin/rails db:migrate; bin/rails db:migrate RAILS\_ENV=test'
alias rollback="rake db:rollback; RAILS\_ENV=test rake db:rollback"
alias push='git push origin HEAD'
alias pr='git pull-request -c -m'
alias ppr="git push origin HEAD && git pull-request -m"
alias pulls='git browse -- pulls'
alias prs='git pr list'
pull() \{
git browse -- pull/'$1'
}
alias la='ls -a'
alias ll='ls -al'*

---

Contact OOZOU: hello@oozou.com · +66 2544 0000 · https://oozou.com/zh-Hans/contact

More for AI agents: https://oozou.com/llms.txt · every page has a markdown twin at its URL plus ".md"
