foo
というスクリプトと同じフォルダにbar
というスクリプトがあるとします。言うfoo
は次のようになります。スクリプトのあるフォルダから何かを実行するには
./bar
を今、私は./foo
を呼び出す場合、これは正常に動作しますが、私は別のフォルダに午前somefolder/foo
を呼び出す場合、それは失敗します。
foo
が入っているディレクトリから./bar
を解釈するとどうすればよいですか?
foo
というスクリプトと同じフォルダにbar
というスクリプトがあるとします。言うfoo
は次のようになります。スクリプトのあるフォルダから何かを実行するには
./bar
を今、私は./foo
を呼び出す場合、これは正常に動作しますが、私は別のフォルダに午前somefolder/foo
を呼び出す場合、それは失敗します。
foo
が入っているディレクトリから./bar
を解釈するとどうすればよいですか?
foo
は、次のようになります。
cd "$(dirname "$0")"
./bar
でのbashなどのシェルのためにかなり徹底的に答え
ようこそスタックオーバーフローへ。リンクだけで質問に回答しないでください。[How-to-answer]をお読みください。以前の質問の正確な複製である質問が表示されたら、質問の「フラグ」ボタンをクリックし、「ここには属していません」、「正確な複製」を選択し、前の質問へのリンクを入力します。また、他の人に今すぐ話すようにコメントを残してください(司会者が行動するまで、フラグは見えません)。 – Gilles
注目。あなたが私に新しいと言うことができるように、私はこれにフラグを付ける十分な評判を持っていない可能性があります。 – iandotkelly
問題になるのパスの場合です。この意志めちゃくちゃに他のすべての引数ディレクトリを変更します。しかし、両方のステートメントを組み合わせることで、望ましい効果が得られます。 –