システムプログラム(第0回): bashのalias

                                       筑波大学 システム情報系 情報工学域
                                       新城 靖
                                       <yas@cs.tsukuba.ac.jp>

このページは、次の URL にあります。
http://www.coins.tsukuba.ac.jp/~syspro/2022/2022-05-18/bash-alias.html
あるいは、次のページから手繰っていくこともできます。
http://www.coins.tsukuba.ac.jp/~syspro/2022/
http://www.coins.tsukuba.ac.jp/~yas/

■エイリアス(alias)

エイリアスとは一般に「別名」の意味。1つのものに2つ以上の名前をつける。

別名をつける目的

◆bashのエイリアス

bash では、コマンドに別の名前をつける。長いコマンドラインを楽に打ち込む ため機能。 MacOS のファイルに対する alias とは別の話。

◆aliasにするかシェル・スクリプトにするか

alias とシェル・スクリプトには共通点が大きい。 aliasの代わりに、関数を使う方法もある。 。

◆aliasの例:cd ~/public_html/htdocs

cd ~/public_html/htdocs」を簡単に実行するためのコマンド 「cd-web」 を alias として定義する。
$ cd-web [←]
-bash: cd-web: command not found
          # 最初は cd-web というコマンドは見つからない
$ alias cd-web [←]
-bash: alias: cd-web: not found
          # 最初は cd-web という alias も見つからない
$ alias cd-web='cd ~/public_html/htdocs' [←]
          # aliasの定義
$ alias cd-web [←]
alias cd-web='cd ~/public_html/htdocs'
          # aliasの定義の確認
$ pwd [←]
/home/prof/yas
          # 最初はホーム・ディレクトリに居る
$ cd-web [←]
          # 定義したaliasの実行
$ pwd [←]
/home/prof/yas/public_html/htdocs
          # ~/public_html/htdocs に移動している。
$ []

◆~/.bashrcへのaliasの登録

bash の alias は、定義したシェルでのみ有効である。 全部のシェルで有効にするためには、 ~/.bashrc に登録する必要がある。

~/.bashrc に alias の定義を追加したものを有効にするには、次のような方法 がある。

既に実行しているシェルには反映されない。実行しているシェルに反映させる には、「.」コマンド、または、「source」コマンドを用いて、現在の読み込ま せる。
$ . ~/.bashrc [←]
$ []
$ source ~/.bashrc [←]
$ []

◆~/.bashrcの編集は慎重に

もし ~/.bashrc に間違いが含まれた場合、iTerm が開かなくなる等の問題が生 じることがある。(iTerm でウィンドウを開いても、すぐに bash が終了 してしまうことがある。)

iTerm が開かない時には、Dock の Emacs で修正したり、Windows で修正する。


Last updated: 2022/03/25 23:13:19
Yasushi Shinjo / <yas@cs.tsukuba.ac.jp>