「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

.cshrc

pointこの用語のポイント

point設定ファイルだよ

pointcshを起動したときに読み込まれるよ

pointtcshを起動して「.tcshrc」がない場合にも読み込まれるよ

スポンサーリンク

簡単に書くよ

.cshrcとは

cshを起動したとき、あるいは、tcshを起動して「.tcshrc」がないときに読み込まれる設定ファイル
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として

ログイン
シェル
csh
tcsh
ログインシェル


について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

ログインは、ざっくり一言で説明すると「認証して使える状態にすること」です。
ログインする対象が会員制の秘密クラブだとしたら、その秘密クラブの中に入っていくイメージですかね。

.cshrc

多くの場合、ログイン時の認証はIDパスワードを使ってやります。

IDは、ログインする対象のサービスから払い出されたIDだったり、登録するときに入力した自分のメールアドレスだったり、初期設定のときに自分で決めたIDだったりです。
パスワードは会員登録とかするときに自分で決めたパスワードです。

それらのIDとパスワードを入力して「おまえは使ってOKなやつかな?」を確認してもらい「あぁ、おまえは使ってOKなやつか。どうぞ使ってください」にするのがログインです。

.cshrc2

シェルは「人間様からの入力をコンピュータさんに伝えるプログラム」です。

.cshrc3

コンピュータを1つの会社に例えれば、シェルは受付のおねーさんです。

.cshrc4

ついでなので書いておくと、コンピュータを使う人間が会社への訪問者、パソコンの中身が会社で働いている人に相当します。

.cshrc5

あなたがパソコンの中身と直接やり取りすることは ありません。
あなたが やり取りする相手は、シェルです。
シェルが、あなたの代わりにパソコンの中身と やり取りしてくれます。

.cshrc6

シェルの詳細は、用語「シェル」の説明を ご覧ください。

.cshrc7

cshは「シェルの種類のひとつ」です。
一口に「シェル」と言っても、いろいろ あります。
その「いろいろ」のひとつです。

.cshrc8

tcshは「cshをパワーアップしたシェル」です。
いろいろあるシェルのひとつです。

.cshrc9

ログインシェルは「ログインして最初に相手してくれるシェル」です。

.cshrc10

シェルはログイン直後から動き始めます。
この

ログインしたときに起動するシェル

がログインシェルです。

ちなみに、使うシェルは途中で別のやつに変えることもできます。
ログインしたときのシェルはbashだったけど途中からcshに変える、といったことも可能です。

以上を踏まえて

cshを起動したとき、あるいは「.tcshrc」という設定ファイルがない状態でtcshを起動したときに読み込まれる設定ファイル

が「.cshrc」です。

.cshrc11

「.cshrc」はログインした直後のディレクトリホームディレクトリにあります。
場所を指定しないで

cd

コマンドを実行したときに移動するディレクトリです。

ただし「.cshrc」は隠しファイルです。
普通に

ls

を実行しても表示されないかもしれません。
「-a」オプションを付けて

ls -a

を実行すれば「.cshrc」も表示されます。

また「.cshrc」が読み込まれるタイミングですが、単純だけどややこしいです。
順番に見ていきましょう。

まず、cshを起動したときに「.cshrc」が読み込まれます。

注意点として「.bashrc」と違って

・cshをログインシェルに設定した状態でログインした場合
・ログインした後に画面上からcshに変えた場合


のどちらでも読み込まれます。
※「.bashrc」は「(ログインした後に画面上から)bashを起動したときに読み込まれる設定ファイル」です。余裕がある方は併せて覚えてあげてください。

次に「.tcshrc」がない状態でtcshを起動したときにも読み込まれます。

「.tcshrc」は「tcshを起動したときに読み込まれる設定ファイル」です。
この「.tcshrc」の代わりとして「.cshrc」が読み込まれます。
いわば「.tcshrc」の補欠のような位置付けですね。

「.cshrc」が読み込まれるタイミングは、基本的には、この2つです。

・csh起動時
・tcsh起動時(「.tcshrc」がない場合)


ね。

ただし、環境によってはcshがtcshのエイリアス(別名)になっていることがあります。
その場合、cshと言っても中身はtcshです。
よって、細かく分けると「.cshrc」が読み込まれるタイミングは

・csh起動時
・tcsh起動時(「.tcshrc」がない場合)
・csh(tcshの別名)起動時(「.tcshrc」がない場合)


の3つになります。

実は私の環境ではcshを起動したのに「.cshrc」が読み込まれなくてですね。
少し焦ったのです。

調べてみたら、私の環境ではcshはtcshの別名でした。
そして「.tcshrc」があったのです。

そのせいで、cshを起動しても「.cshrc」が読み込まれない状態(代わりに「.tcshrc」が読み込まれる状態)になっていました。

cshを起動しても「.cshrc」が読み込まれない場合は

・cshがtcshのエイリアスになってないか
・「.tcshrc」が読み込まれていないか


の2つを確認してみてください。
おそらく、それで解決すると思います。


image piyo2

一言でまとめるよ

まぁ「.cshrc」って単語が出てきたら「csh起動時、あるいは、.tcshrcがない状態でのtcsh起動時に読み込まれる設定ファイルなんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像021
書籍画像010


書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
ソフトウェア受託現場の「失敗」集めてみた。 42の失敗事例で学ぶ受託開発のうまい進めかた
サイバー忍者入門 忍者・スパイ・軍隊・ハッカーに学ぶ フルスタック・ハッキング