【.bashrc / .zshrc】Linux設定ファイルの書き方と反映方法【Linuxコマンド入門 Part4-2】

はじめに

前回は、長いコマンドを自分好みに短縮する魔法 alias コマンドを紹介しました。 しかし、意気揚々とターミナル(黒い画面)を再起動すると。

「あれ…?登録したはずの alias が全部消えてる!」

そうなんです。ターミナル上で直接打ち込んだ alias などの設定は、その場限りのもので、画面を閉じるとすべて忘れられてしまいます。

毎回起動するたびに設定を打ち直すなんて、面倒でやってられませんよね。 そこで今回は、作った設定をLinuxに永久に記憶させるためのファイル、「.bashrc」と「.zshrcについて解説します。

Linuxコマンド入門第4シリーズ。Linuxでターミナル設定の永続化の仕方 bashrcやzshrcの仕組みと書き方

1. 設定ファイル(.bashrc / .zshrc)とは?

Linuxには、「ユーザーがターミナルを開いた瞬間に、自動で読み込まれる台本(設定ファイル)」が存在します。

その台本の中に「このエイリアスを登録してね」と書き込んでおけば、毎回自動で設定が行われるという仕組みです。

今回のシリーズで紹介するほかの設定コマンドもここに書いておけば永続化できます。

代表的な設定ファイルには .bashrc.zshrc の2種類があります。これは、使っている「シェル(コマンドを受け取るプログラム)」の種類によって異なります。

まずは自分のシェルを確認しよう

ターミナルに以下のコマンドを打ち込んでみてください。

echo $SHELL
# 出力例
/bin/bash
  • 出力結果の最後に bash と出た人 = .bashrc を編集します。(多くのLinuxの標準です)
  • 出力結果の最後に zsh と出た人 = .zshrc を編集します。(最近のMacなどは標準がこちらです)

2. 実際にファイルに書き込んでみよう

今回は、多くの環境で使われている bash を例に進めます。(zsh の方は適宜 .zshrc に読み替えてください)

設定ファイルはあなたの「ホームディレクトリ(~)」にあります。

#ホームディレクトリのファイルの確認 ここに.bashrcなどがあるはずです。
ls ~ -a

ステップ1:エディタでファイルを開く

ファイルの中身を書き換えるために、ターミナル上で動くテキストエディタ(今回は初心者向けの nano)を使います。

nano ~/.bashrc

開いてみると、ずらーっと起動時に読み込むシェルコマンドが記述されています。中身をよく見てみると、前回紹介したようなaliasの記述もここにあることが確認できるはずです。

bashrcのデフォルトのalias記述

画像 bashrc一部抜粋

ステップ2:一番下に設定を追記する

これらは元からある大事な設定なので、絶対に消さないようにしてください。(変えても直せる自信があるなら変えてもいいですが、そうでないときは触らない方がいいです)

一番下までカーソル(矢印キー)を移動させて、前回学んだ alias を追記しましょう。 コメント(#)をつけておくと、後から見た時に分かりやすいのでオススメです。

# --- ここから下が自分で追加した設定 ---
# 削除前の確認を必須にする
alias rm='rm -i'

# よく使うディレクトリへの移動
alias work='cd /var/www/html'

ステップ3:保存して閉じる

nano エディタの場合、以下の順にキーボードを押して保存します。

  1. Ctrl + o (保存の準備)
  2. Enter (ファイル名の確認・確定)
  3. Ctrl + x (エディタを終了)

3. 今すぐ設定を反映させる source コマンド

設定ファイルに書き込みが終わりました! 「よし、さっそく rm コマンドを試してみよう!」……と言いたいところでが、このままだと反映されていません。

実は、.bashrc「ターミナルを新しく開いた時」にしか読み込まれません。今すぐこの設定を反映させるには、ターミナルを一度閉じて開き直すか、source(ソース) というコマンドを使います。

source ~/.bashrc

このコマンドは、「設定ファイルを今すぐ再読み込みして!」と指示するものです。 何もメッセージが出ずに次の行に進めば、反映成功です。これで、あなたが設定したエイリアスがずっと使えるようになりました!

rmをしてみる

# .bashrcを編集
nano ~/.bashrc

# まずは sourceせずに text.txtを削除してみる
touch text.txt
ls
#$ text.txt
rm text.txt
ls
#$ "" 出力なし(確認なしに削除)

# まずは sourceして反映後削除 text.txt
source .bashrc
touch text.txt
# rmしようとすると 確認表示が出る。
rm text.txt
#$ rm: remove regular empty file 'text.txt'?
# そのまま enterすると削除されない
ls
#$ text.txt

# 確認で y (yes)を打った時だけ削除
rm text.txt
#$ rm: remove regular empty file 'text.txt'? y
ls
#$ "" 出力なし(確認なしに削除)
【コラム】なぜファイル名の先頭に「.(ドット)」がついているの?

.bashrc というファイル名を見て、「なぜ先頭にピリオドがあるの?」と疑問に思いませんでしたか?

Linuxにおいて、ファイル名が「.」から始まるものは「隠しファイル」として扱われます。 試しにホームディレクトリで ls と打っても、.bashrc は見つかりません。隠しファイルを見るには、ls -a(allオプション)を使う必要があります。

重要な設定ファイルを、間違って消したり変更したりしないように、普段は見えないように隠してあるのです。

歴史的な背景などは lsコマンドの記事で紹介しましたね。

【初心者向け】pwd・lsコマンド 「今どこ?」と「何がある?」- コピペで試せるオプション理解 -【Linuxコマンド入門 #2】

まとめ

  • .bashrc / .zshrc: ターミナル起動時に読み込まれる、自分専用の設定ファイル。
  • 自分のシェルの確認: echo $SHELL で調べる。
  • 設定の反映: 書き換えた後は source ~/.bashrc を実行する

これで「自分好みの設定」を保存できる強力な武器を手に入れました!

しかし、Linuxの世界にはエイリアスだけでは解決できない「コマンドが見つかりません」というエラーが存在します。 次回は、自作プログラムをどこからでも実行できるようにするための「PATH(パス)」という超重要概念について解説します。

指定された記事(ID: 3597)は現在公開されていません。


第四回”Linuxコマンド入門 Part4 ~自分好みの環境を整える~”では、linuxでの作業を効率化し自分好みの環境を作り上げる方法を紹介しています

デフォルト画像 2 記事
シリーズ

Linuxコマンド入門 Part4 ~ターミナル操作の効率化とシェル環境のカスタマイズ~

Linuxで、コマンドライン操作を効率化したり、自分好みにカスタマイズする方法を学ぼう。

ここまで読んでいただきありがとうございます。

では、次の記事で。 lumenHero