239

Unix では、最初にそのディレクトリに移動makeせずにそのディレクトリで実行できますか?cd

4

5 に答える 5

381

make -C /path/to/dir

于 2009-01-17T15:33:52.877 に答える
104

他の回答で述べたように、make(1) には-C このためのオプションがあります。いくつかのコマンドには同様のオプションがあります (tar など)。そのようなオプションを持たない他のコマンドについては、以下を使用できることに注意してください。

(cd /dir/path && command-to-run)

これにより、最初に作業ディレクトリが変更されたサブシェルでコマンドが実行されます (親シェルの作業ディレクトリはそのままにしておきます)。ここでは 、ディレクトリを変更できないエラー ケースをキャッチする&& 代わりに使用されます。;

于 2009-01-17T15:44:49.377 に答える
23

ディレクトリに cd したくない理由が、後のタスクのために現在のディレクトリにとどまる必要があるためである場合は、pushd と popd を使用できます。

pushd ProjectDir ; make ; popd

これは ProjectDir に入り、make を実行して元の場所に戻ります。

于 2009-01-19T05:25:56.233 に答える
11

また、次を使用することもできます。

make --directory /path/to/dir
于 2016-09-15T10:24:00.093 に答える