
「csh」の設定
Solarisで利用するシェルをtcshに変更したが、設定が何も行われていない。
そこで、設定ファイルを作成し、必要な設定を行う。
「csh」の設定
Solaris% vi ~/.cshrc <= 設定ファイルの作成
# パスの設定
set path=(/usr/bin /usr/dt/bin /usr/openwin/bin /bin /usr/ucb /usr/sfw/bin /opt/sfw/bin /usr/ccs/bin /usr/local/bin)
# エイリアス
alias ll 'ls -laF | more'
alias h 'history 32'
# CompanionCDをインストールしている場合、以下の設定も行う
alias ls 'gls -F --color=always'
alias make 'gmake'
alias ar 'gar'
alias tar 'gtar'
# TAB補完でもカラー表示
set color
# 「Esc」キーでファイル名の補完を行う
set filec
# ヒストリに保存するコマンド
set history = 10000
# 「~/.history」に保存するコマンド(マージする)
set savehist = (10000 merge)
# [Ctrl] + [D]でログアウトしない
set ignoreeof
# ファイル名の補完で複数の候補が有る場合、一覧を表示する
set autolist
# プロンプトの設定
# `/usr/ucb/whoami` : ユーザ名
# `/usr/bin/uname -n` : マシン名
set prompt="`/usr/ucb/whoami`@`/usr/bin/uname -n`% "
# lsの結果をlessに渡してもカラー表示にする
setenv LESS -r
# エディタの設定
setenv EDITOR vi
# manのパスの設定
setenv MANPATH /usr/man:/usr/share/man:/usr/openwin/share/man:/usr/sfw/man
setenv MANPATH "$MANPATH":/usr/local/man:/usr/local/share/man
# tcshの場合
if ( ${?tcsh} ) then
# タイトルバーの変更
if( $?TERM )then
switch( $TERM )
case xterm:
case kterm:
case dtterm:
alias precmd 'printf "\033]2;${HOST}\007"' # \033]2; と \007 の間の部分がタイトルバーに表示される
endsw
endif
# プロンプトの設定
# %n : ユーザ名
# %m : マシン名
# %c : カレントディレクトリ
# %# : スーパーユーザは「#」一般ユーザは「>」で表示
set prompt='%{\033[1;36m%n@%m %c%#\033[00m%} '
# cdコマンドの補完ではディレクトリのみを対象にする
complete cd 'p/1/d/'
# 入力行と一致するヒストリは削除
set histdup = erase
# ヒストリにサーチ機能を付加
bindkey -k up history-search-backward
bindkey -k down history-search-forward
endif
Solaris% source ~/.cshrc <= .cshrcファイルの読み込み
|
書式の指定
tcshでの場合だが、プロンプトの設定でカラー表示している。
色の指定は
set prompt='%{\033[36m%n@%m %c%#\033[00m%} '
の 36 の部分で行う。
書式の指定方法は以下の通り。
| 書式 |
番号 |
| 通常 |
00 |
| 太字 |
01 |
| 下線 |
04 |
| 点滅 |
05 |
| 前背色反転 |
07 |
| 表示しない |
08 |
| ノーマル化 |
22 |
| 下線なし |
24 |
| 点滅なし |
25 |
| 前背色反転なし |
27 |
| 色 |
番号(文字) |
番号(背景) |
| 黒 |
30 |
40 |
| 赤 |
31 |
41 |
| 緑 |
32 |
42 |
| 黄 |
33 |
43 |
| 青 |
34 |
44 |
| 紫 |
35 |
45 |
| シアン |
36 |
46 |
| 灰 |
37 |
47 |
| デフォルト |
39 |
49 |
複数指定する場合、以下のようにセミコロンで区切る。
set prompt='%{\033[01;36;45m%n@%m %c%#\033[00m%} '
|
rootの場合の設定
rootの場合、ログインシェルを /sbin/sh 以外にしてしまうと障害時等に問題になる事がある。
しかし、/sbin/sh は使いにくい為、通常はtcshを利用するようにする。
※ただし、この設定を行うと端末からのGUIでのログインが出来なくなってしまう。
その為、端末から直接ログインする場合、~/.profile を別名に変更するなどの対処が必要。
もしログインしてしまった場合、SSH等によりリモートでログインし、XsessionのプロセスをTERMで終了させる。
Solaris# vi ~/.profile <= 設定ファイルの編集
以下を追加
if [ -x /bin/tcsh ]; then
echo ' -- Starting `tcsh` as a login shell... --'
export SHELL; SHELL=/bin/tcsh
exec $SHELL -l
fi
|