No.1ベストアンサー
- 回答日時:
シェルスクリプト中でスクリプト名は「$0」で取得出来ます。
フルパスで指定しているのなら
「dirname $0」で(ファイル名を取り除いた)ディレクトリ部分が
取り出せます。
>cd /tmp
>cat hoge.sh
#! /bin/sh
echo dirname=`dirname $0`
>/tmp/hoge.sh
dirname=/tmp
>./hoge.sh
dirname=.
>sh /tmp/hoge.sh
dirname=/tmp
No.3
- 回答日時:
#1です。
補足です。> ↑をどこの場所で実行しても実行後には
> /home/user/xxxxx/yyyyy/zzzzz/の位置に移動をしていたいのですが、
スクリプト中でchdir(cd)すれば、
スクリプト内部ではディレクトリ移動出来ますが、
スクリプト終了後に、そのディレクトリ変更は親プロセス(シェル)には
反映されません。
>cat /tmp/hoge.sh
#! /bin/sh
echo dirname=`dirname $0`
cd `dirname $0`
echo pwd=`pwd`
>cd /home
>pwd
/usr/home
>/tmp/hoge.sh
dirname=/tmp
pwd=/tmp
>pwd
/usr/home
スクリプト内部でさらにシェルを起動すれば、
その子シェルの中では、ディレクトリ変更は有効になっていますが、
ご要望にはそわないかもしれないですね。
>cat /tmp/hoge2.sh
#! /bin/sh
echo dirname=`dirname $0`
cd `dirname $0`
csh
No.2
- 回答日時:
ちょっと疑問があるのですが、
> 実行した後にそのパスを利用してシェル位置まで移動したいです。
ということは、
/home/user/xxxxx/yyyyy/zzzzz/aaa.sh
の中でcdでディレクトリ移動したいのでしょうか?
スクリプトを実行してカレントディレクトリを移動するのは無理だと思うのですが。スクリプトの中でcdしても、スクリプトを抜けると元に戻るので。
この回答へのお礼
お礼日時:2007/01/16 20:03
すみません。ちょっと言葉がおかしかったですね。
スクリプト内で移動をしていればよくて、親プロセスは移動しないでもよかったんです。
助言ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- その他(開発・運用・管理) bashで15分前と現在のエポックタイムの時間を取得したい 2 2023/02/01 19:10
- その他(開発・運用・管理) WindowsからSSHでサーバーにあるファイルをダウンロードできない…。 3 2022/04/24 11:08
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
- Excel(エクセル) マクロのコードを、少しでも削って短くしたい 3 2022/08/30 07:46
- その他(プログラミング・Web制作) Linuxについて質問です。 引数に指定されたアクセスログのファイルからアクセス数が多い順に上位3つ 1 2023/02/03 03:46
- UNIX・Linux コマンドプロンプトでのユーザーのサインイン時間設定について 1 2022/08/09 09:09
- Windows 10 コマンドプロンプトでのユーザーのサインイン時間設定について 1 2022/08/09 20:43
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- セキュリティソフト セキュリティ 3 2022/04/16 17:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
このプログラミング言語のfor分...
-
Pythonで仮想通貨の自動売買が...
-
ウェブサイトのアクセスログに...
-
AIの登場でプログラマーたちが...
-
Googleタグマネージャで、既存H...
-
Google ColaboでGUI作成
-
vba クリップボードクリアにつ...
-
htaccessで特定のディレクトリ...
-
JRのjsonファイルって使って大...
-
{ CONTROL Forms.Label.1}が...
-
P2P地震速報のEEW APIの仕様書...
-
パイソン。スクレイピング。Chr...
-
Trix のツールバー(?)を上では...
-
UDP通信を使うチャットプログラ...
-
Version Control on Unity
-
プログラミングサイトについて。
-
VBAでパワーシェルを実行したい...
-
Webサイト内に埋め込んだmp4動...
-
家庭のパソコンで Python の 環...
-
Pythonを勉強中で、初歩的です...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
テキストファイルの1行目のみを...
-
Google ColaboでGUI作成
-
Python... 環境設定 初心者です...
-
AIの登場でプログラマーたちが...
-
入力された文字列が、LD22000を...
-
ITパスポートの勉強をしていま...
-
プログラミングサイトについて。
-
バッチファイルが保存されてい...
-
VBSでテキストファイルの2行目...
-
40代後半でゼロからのプログラ...
-
{ CONTROL Forms.Label.1}が...
-
Version Control on Unity
-
過剰なオブジェクト指向脳から...
-
VBAでパワーシェルを実行したい...
-
ImageMagickでgif画像の一部が...
-
正規表現 URL抽出「 [\\/\\b]{0...
-
VBA 電話番号の正規表現について
-
そのまま使っただけなのに・・...
-
プログラム言語について。
おすすめ情報