web-dev-qa-db-ja.com

「make install」の実行をシミュレートします-「ドライラン」またはシミュレータユーティリティですか?

Bashスクリプトを実行して結果のコマンドを確認する一般的な方法はありますが、実際にはコマンドを実行しません-つまり、「ドライラン」/ソートのシミュレーターですか?

実行したいデータベースインストールスクリプト(実際には./configureとmakeを実行した後に "make install")を実行していますが、それは不要なあらゆる種類のものをインストールしています。

したがって、実際に実行する前に、それが何をするかを正確に確認する方法が必要です。代わりにコマンドを手動で実行することもできます。

そのようなタスク(または関連/類似の何か)を実行できるユーティリティはありますか?

13
Vérace

GNU makeにはオプションがあります 予行演習:

「-n」

「--just-print」

「--dry-run」

「--recon」

「ノーオペレーション」。 makeは、ターゲットを最新にするために必要なレシピを印刷しますが、実際には実行しません。このフラグを使用しても、一部のレシピは実行されることに注意してください(MAKE変数の仕組みを参照)。また、含まれているメイクファイルを更新するために必要なレシピも実行されます。

したがって、状況に応じて、make -n installは、makeが実行するコマンドを表示します。

17
Jeff Schaller

makeのどのバージョンにも-nオプションがあります( POSIXのmake の説明を参照)。 Shellには対応するオプションがありません(たとえば、コマンドを実行せずにコマンドを表示する)。

状況を悪化させるために、automakeを使用すると、大量のボイラープレートスクリプト(開発者は「再帰的ルール」と呼ばれます)を貼り付けて、誰でも「make -n」を使用する機能を無効にし、何が行われるかを確認します。起こります。

参考文献:

5
Thomas Dickey