csh/tcshをシェルとして使用している場合、Userがログインすると、
>
の様な状態になります。
suした場合、及びrootでログインした時は、
celies#
の様に、ホスト名が表示されます。
このようなプロンプトの表示の設定は各ユーザーごとに設定でき、変更するには、ユーザーのホームディレクトリにある.cshrc を編集します。
ちなみにこれはcsh系シェルの設定ファイルです。
> cd ~
ホームディレクトリに移動
> vi .cshrc
.cshrcを編集開始
if($?prompt) then
set prompt = "表示したいプロンプト名"
set filec
set history = 100
:
:
endif
の様に、set promptの以下を変更します。
例として、"`hostname -s`# "とすると、ホスト名を表示することができます。
.cshrcの変更内容は再ログインすれば有効になりますが、すぐに有効にしたい時はsourceコマンドを実行します。
例えば、上記のように変更した場合、
> source .cshrc
として.cshrcを再読み込みすると、
celies# hogehoge
と表示されます。
上では概略を示しただけですが、プロンプトには様々な情報を表示させることが可能です。
set promptコマンドは一時的に有効にするだけなら、シェル(tcsh)上でそのまま実行すれば良いので、気軽に試してみて気に入ったものが見つかれば.cshrcに記述するのが良いでしょう。
基本は決まった文字列の表示です。
> set prompt="% "
%
コマンドの実行結果をプロンプトにすることも出来ます。
コマンドは「`」で囲みます。
> set prompt="`uname` "
FreeBSD
ただし、このコマンドはset promptされる時に一度だけ実行されるものなので、動的に変わる結果は表示不可能です。
環境変数もプロンプトで使用可能です。
コマンドは「`」で囲みます。
> set prompt="$USER "
ユーザー名
当然ですが、いくつかを組み合わせることも可能です。
コマンドは「`」で囲みます。
> set prompt="`hostname -s`-\>$USER# "
ホスト名->ユーザー名#
また、カレントディレクトリを表示させることも可能です。
> set prompt="%/# "
/home/hogehoge#
上の状態でも特に問題はありませんが、ホームディレクトリだけは「~」と表示させることも可能です。
> set prompt="%~# "
~#
他にも以下の設定が可能です。
なお「%S 〜 %s」のようになっているものは、%Sから%sまでの間で設定が有効なるという意味です。
| 設定 | 内容 |
|---|---|
| %c | カレントディレクトリの最後のディレクトリ名 cの後に数字を付けると、最後から"数字"個分のディレクトリ名となる |
| %S 〜 %s | 反転表示 |
| %B 〜 %b | 太字 |
| %U 〜 %u | 下線 |
| %Y | 西暦 4桁で表示 |
| %y | 西暦 2桁で表示 |
| %w | 月 Jun〜Decで表示 |
| %W | 月 1〜12で表示 |
| %d | 曜日 Sun〜Satで表示 |
| %D | 日 1〜31で表示 |
| %t | 現在時刻(時分) 12時間表示 |
| %T | 現在時刻(時分) 24時間表示 |
| %p | 現在時刻(時分秒) 12時間表示 |
| %P | 現在時刻(時分秒) 24時間表示 |
| %m | ホスト名表示 |
| %n | ユーザー名表示 |