- - PR -
シェルスクリプトの動いているディレクトリ
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2008-02-02 22:41
シェルからシェルを呼び出す際に、元のシェルが相対パスや絶対パス
(クーロンからの起動)等を意識せずに動かす方法はありますか? 例えば「/opt/aaaaa/bin/test1.sh」から「/opt/aaaaa/bin/test2.sh」呼び出す際に 当然「test1.sh」に「test2.sh」の絶対パスを書けば、問題なく呼び出せますが、 シェルの数も多い上、使うサーバによってディレクトリが異なるので、 全シェルに、フルパスを記入するのは、かなりのパワーが必要になってしまうので 自分のディレクトリを自動で分かるシェルにしたいと思い下記のような スクリプトを考えました。 PROCESS=`echo $0` NAME=`basename ${PROCESS}` LOCAT=`echo ${PROCESS} | sed -e "s/${NAME}//"` ${LOCAT}test2.sh こうすれば、どこで起動させても関係なく動くかと思ったのですが やり方が力技っぽくて、何かスッキリした方法をお持ちの方はいませんか? (コマンドがあるのかも・・・・) | ||||
|
投稿日時: 2008-02-03 02:43
こんばんわ、
dirname コマンドもありますが.. BASEDIR='/foge' とかして実行パスを限定するとか.. PATH='/bin:/usr/bin' とかして環境変数を変えるとか.. | ||||
|
投稿日時: 2008-02-03 09:49
そんな便利なコマンドがあるとは・・・ 勉強不足でした。ありがとうございます。 |
1