1. ホーム
  2. bash

[解決済み] Bashはどのように異なるディレクトリコンテキストでコマンドを実行できますか?

2022-05-16 19:56:05

質問

非常に特定のディレクトリ内から呼び出される一般的なコマンドがあります。このプログラムの実行ファイルは /bin に 1 つだけあり、現在の作業ディレクトリは、このプログラムを正しく実行するために非常に重要です。スクリプトは、それが実行されるディレクトリ内にあるファイルに影響を与えます。

今、私は、1 つのディレクトリでいくつかのことを行うカスタム シェル スクリプトも持っていますが、別のディレクトリにあるかのように、上記のコマンドを呼び出す必要があります。

シェルスクリプトでこれを行うにはどうしたらよいでしょうか。

どのように解決するのですか?

を使用することができます。 cd を使うか、あるいは pushdpopd というビルトインがあります。例えば

# do something with /etc as the working directory
cd /etc
:

# do something with /tmp as the working directory
cd /tmp
:

ビルトインは他のコマンドと同様に使用でき、スクリプトの中で何度でもディレクトリコンテキストを変更することができます。