Bashプログラミング
 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング

Bashエイリアスとは?作成方法と使い方を実例付きで解説

Linuxのシェルやターミナルを日常的に使っている方にとって、エイリアス(alias)は作業時間を大幅に短縮してくれる強力な機能です。この記事では、Bashエイリアスの基本的な概念から、実際の作成方法、便利な活用例までをわかりやすく解説します。

Bash/Linuxシェルにおけるエイリアスとは?

エイリアスとは、長いコマンドへのショートカットのことです。キーボードショートカットに似た仕組みで、たとえば多くのGUIオペレーティングシステムでは、CTRL + Cキーの組み合わせが「コピー」コマンドのショートカットとして機能します(マウスで画面を移動して複数のメニューをクリックする手間を省ける)。これと同じように、エイリアスを使えば、ターミナルで長いコマンドを毎回入力する手間を省くことができます。

Bashにはエイリアス機能が標準で組み込まれており、他の多くのLinuxシェルにも同様の機能が搭載されています。特にzshはBashとよく似た構文を採用しています。

なお、この記事で紹介する例はBashとZshのどちらでも動作します。

エイリアスの作成方法

エイリアスを作成するには、aliasコマンドを使用します。

aliasコマンドとunaliasコマンドの構文

aliasコマンドの基本構文は以下の通りです:

alias OPTIONS SHORTCUT=COMMAND

また、unaliasコマンドの構文は以下の通りです:

unalias OPTIONS SHORTCUT

各要素の意味は次の通りです:

  • OPTIONS: 下記の表にあるオプションフラグ(任意)
  • SHORTCUT: COMMANDを実行するために入力するショートカット名
    • 使用できるのは英数字、ハイフン(-)、アンダースコア(_)のみ
  • COMMAND: SHORTCUTが入力されたときに実行されるコマンド
    • =記号でSHORTCUTとCOMMANDを区切る。間にスペースを入れないこと
    • COMMANDにスペースが含まれる場合は、引用符('または")で囲む必要がある
    • エイリアスはコマンドの最初の単語としてのみ使用できる
aliasコマンドのオプション
-p 現在定義されているエイリアスの一覧を表示(aliasコマンド専用)
-a すべてのエイリアスを削除(unaliasコマンド専用)

一時的なエイリアスの設定(Bash)

aliasコマンドを実行してエイリアスを作成すると、そのエイリアスは現在のセッションでのみ有効になります。つまり、開いているターミナルウィンドウや、リモートサーバーへのログインセッションが対象です。

ターミナルを終了したり、ログアウトしたり、システムを再起動したりすると、すべてのエイリアスは消去され、次回以降のセッションで自動的に復元されることはありません。

実例:エイリアスの作成と使用

以下は、エイリアスを定義するシンプルな例です:

alias say_hello='echo "Hello LinuxScrew!"'

上記では、say_helloというエイリアスを定義しています。このエイリアスを実行すると、次のコマンドが実行されます:

echo  "Hello LinuxScrew!"

しかし今後は、長いコマンドをすべて入力する代わりに、エイリアスを呼び出すだけで済みます:

say_hello

このシンプルな例でも、かなりのタイピング量を節約できます。より複雑なコマンドの場合、エイリアスを活用すれば、長いコマンド文字列を覚えたり入力したりする手間を大幅に削減できます。

永続的なエイリアスの設定(Bash)

ウィンドウを閉じたりログアウトしたり再起動しても消えない、永続的なエイリアスを作りたい場合は、aliasコマンドを.bashrcファイルに追記しましょう。そうすることで、ログインのたびに自動的に読み込まれます:

nano ~/.bashrc

.bashrcファイルは、ユーザーアカウントにおけるBashシェルの動作を定義する設定ファイルです。ファイルの末尾にaliasコマンドを1行ずつ追記すれば、ログインするたびにそれらが自動的に実行されます。編集後は「source ~/.bashrc」を実行するか、ターミナルを再起動すると変更が反映されます。

既存のエイリアス一覧を表示する

現在定義されているエイリアスの一覧を表示するには、aliasコマンドに-pオプションを付けて実行します:

alias -p

エイリアスを削除する

特定のエイリアスを削除するには、unaliasコマンドを使用します:

unalias say_hello

すべてのエイリアスを削除する

定義済みのエイリアスをまとめてすべて削除するには、unaliasコマンドに-aオプションを付けて実行します:

unalias -a

Zshの追加機能

上記の内容はZshシェルでもそのまま利用できますが、Zshにはさらに多彩なエイリアス関連のオプションが用意されています。詳細はZshの公式ドキュメントをご覧ください:

https://zsh.sourceforge.net/Intro/intro_8.html

ZshはAppleのmacOSでデフォルトシェルに採用されたことで、近年人気が高まっています。ただし、ほとんどのLinuxディストリビューションでは依然としてBashがデフォルトであるため、この記事ではZsh固有の追加機能についての深掘りは割愛します。詳しくは別の記事で解説する予定です!

  1. iPhoneの「時間制限あり(タイムセンシティブ)」通知とは?仕組みと設定方法を徹底解説

    iPhoneやiPadには、重要な通知を見逃さないための「時間制限あり(Time Sensitive)」という特別な通知機能が備わっています。この記事では、その仕組みと有効化の手順をわかりやすく解説します。 iPhoneに届く通知は、すべてが同じというわけではありません。多くの通知はすぐに確認しなくても問題ありませんが、中には即座に対応が必要なものもあります。しかし、優先度の高い通知とそうでない通知を見分けるのは意外と難しく、うっかりスワイプして消してしまうことも少なくありません。 そこで役立つのが、「時間制限あり」と名付けられた特殊な通知です。この記事では、その特徴と、iPhone・iP

  2. Windows Sysinternalsとは?概要から使い方まで徹底解説

    自分のWindowsパソコンを完全にコントロールできたら素晴らしいと思ったことはありませんか?ほぼすべてのWindowsプロセスやアプリケーションの内部を覗き見できるだけでなく、アプリがアクセスしているファイルやレジストリエントリをリアルタイムで確認できるのは、実に魅力的な機能です。 Sysinternalsは、最も信頼性が高く強力なWindowsシステム管理ツールキットのひとつです。そのほとんどのユーティリティはシンプルなEXEファイルなので、USBフラッシュドライブに入れておけば、持ち運び可能なシステム管理ツールとしていつでも活用できます。 Windows Sysinternalsとは?