Makefileを介して複数の放浪ボックスを並列に開始

Makefileを介して複数の放浪ボックスを並列に開始

いつものように使用する必要がある3つの放浪箱があり、すべてを同時に開始するためにMakefileを作成しました。まあ、実際に順番に。

Makefileはデフォルトで次のようになります。

up:
        cd box1 && vagrant up;
        cd box2 && vagrant up;
        cd box3 && vagrant up;

順番に始まるので時間がかかります。しかし、多くの時間が待つだけで何も起こりません。だから、必要な時間を減らすために並列に始めたいと思います。

単に&後ろに追加することはvagrant up機能しません。$()、または間に入れると""機能しません``

これらのボックスを並列に起動するにはどうすればよいですか?

ところで、私はそれをzsh知覚として使用します。

ベストアンサー1

今私はこの質問に自分で答えることができます。 Makefileは次のようになります。

.PHONY: up box1_up box2_up box3_up

up: box1_up box2_up box3_up

box1_up:
    cd box1 && vagrant up;

box2_up:
    cd box2 && vagrant up;

box3_up:
    cd box3 && vagrant up;

次のように呼び出します。make -j3 up

おすすめ記事