vine-users ML アーカイブ



[vine-users:070112] Re: user 環 境の設定について

  • From: "K.Moriyama" <forest@xxxxxxxxxxxxx>
  • Subject: [vine-users:070112] Re: user 環 境の設定について
  • Date: Fri, 28 Jan 2005 23:13:24 +0900
森山です。

  みなさん、早速の回答ありがとうございます。

On Fri, 28 Jan 2005 12:15:45 +0900
"OOSATO,Kazzrou" <kazz@xxxxxxxxxxxxxx> wrote:

> > .bashrc 内に、以下を追記すると
> 
>   追記しようとしたときに、最初のコメント
> # User specific aliases and functions
> が目に入ると思います。
> 
>   いっぽう、.bash_profile には、
> # User specific environment and startup programs
> とありますよね。

  おっしゃる通りで、PATH 等は、.bash_profile に記述すべきで、
.bashrc に 記述すべきではないようです。ただ、.bash_profile に
記述した場合、2重登録となったので、では .bashrc に記述すると
どうなるのかと試してみたら 5 重登録となった為、この .bash_profile
や .bashrc を 追加起動している一連の動作は正常なのかと疑問に思い
質問しました。しかしながら、誤解を招くような説明でした。

 On Fri, 28 Jan 2005 03:01:30 +0900
"IWAI, Masaharu" <iwai@xxxxxxx> wrote:

> 私の環境では、
> /etc/X11/xinit/xinitrc が /bin/bash -login で実行されるから
> ~/.bash_profile が呼ばれますね。
> また、/etc/X11/xinit/xinitrc.d/setime が /bin/bash で実行されるから
> ~/.bashrc が呼ばれますか。
> 
> で、森山さんのメールには書かれてないですが、きっと export している
> んですよね? そうだとすると意図された動きであると思います。
> # 4 回なのは環境によるのかな? 私も全部みた訳じゃないけど。

  回数は別として、 CUI での login 後の X 起動時に追加起動される
動作その物は、正常な動作のようですね。

On Fri, 28 Jan 2005 03:48:23 +0900
Fujita Yoshihiko <starfish@xxxxxxxxxxxxxxxx> wrote:

> 藤田と申します。
> 
>  Date: Thu, Jan 27, 2005 at 11:14:30PM +0900
>  Subject: [vine-users:070074] user 環境の設定について
>  Message-Id: <20050127231430.0127dd58.forest@xxxxxxxxxxxxx>

> function addpath ()
> {
>   export IFS=":"
>   for f in $@
>   do
>     tmp=`echo $PATH | tr ' ' '\012' | grep "^${f}$" | tr -d '\012'`
>     if [ "x" != "x$tmp" ]; then
>       echo already exist path
>     else
>       echo adding $f
>       PATH=$PATH:$f
>     fi
>   done
>   export PATH
>   export IFS=" 	
> "
> }
> 
> というシェル関数を作って、
> addpath path1:path2:path3
> などとしています。
> もう少しうまくかけるような気もするけれど、とりあえず
> これなら、.bashrc でも .bash_profile でも
> どちらにおいても問題ないと思います。
> ちなみに、パスにスペースがあるとうまく動きません。

 .bashrc 内に [ # User specific aliases and functions ]と有りますが、
そのものズバリ 関数を登録 するとは思わなかったので、勉強になり
ました。

On Fri, 28 Jan 2005 09:18:00 +0900 (JST)
Masaki Kawamura <kawamura@xxxxxxxxxxxxxxxxxxxxxxxx> wrote:

> シェル関数 addpath()は /usr/share/vine/vinelib に入っています。
> パッケージは vutils-1.22.2-0vl1 です。
> Vine Linux 2.5 or 2.6頃は使われていましたが、3.0になってから
> /usr/share/vine/vinelib が読み込まれていないようです。
> # 時間がなくてトレースしていませんが。
> 
> addpath /hoge で PATH=$PATH:/hoge 相当を行い、
> addpath -p /hoge で PATH=/hoge:$PATH 相当が行えます。
> もちろん重複チェック付きです。
> また、存在しないパスを指定すると、加えません。
> # これはautomountの場合を考えると、仕様を変更した方がいいかも?
> ちなみに、rmpathもあります。

  おお、こうゆうのが有ったのですね。早速使用してみました。
.bashrc に、以下のように登録し、

	# User specific aliases and functions
	. /usr/share/vine/vinelib

  .bash_profile に以下のように登録しました。

	# User specific environment and startup programs
	addpath /usr/local/j2sdk/bin

  これにより、2重登録が解消されました。みなさんどうも
ありがとうございました。

#  ところで、.bashrc. と bash_profile 及び addpath あたりは、
# マニュアルに記載が有っても良いように思うのですが...
# ( 私が見落としたのかな〜 ) 

-- 
K.Moriyama