pnpm exec
プロジェクトのスコープ内でシェルコマンドを実行します。
node_modules/.bin
が PATH
に追加されるため、pnpm exec
を使用して依存関係のコマンドを実行できます。
例
プロジェクトの依存関係として Jest がある場合、Jest をグローバルにインストールする必要はありません。pnpm exec
で実行するだけです。
pnpm exec jest
コマンドが組み込みの pnpm コマンドと競合しない場合、exec
の部分は実際にはオプションであるため、次のように実行することもできます。
pnpm jest
オプション
exec
コマンドのオプションは、exec
キーワードの前にリストする必要があります。exec
キーワードの後にリストされたオプションは、実行されるコマンドに渡されます。
OK。pnpm は再帰的に実行されます。
pnpm -r exec jest
NG。pnpm は再帰的に実行されませんが、jest
は -r
オプション付きで実行されます。
pnpm exec jest -r
--recursive, -r
ワークスペースのすべてのプロジェクトでシェルコマンドを実行します。
現在のパッケージの名前は、環境変数 PNPM_PACKAGE_NAME
で利用できます。
例
すべてのパッケージに対して node_modules
のインストールを削除します。
pnpm -r exec rm -rf node_modules
すべてのパッケージのパッケージ情報を表示します。環境変数を機能させるには、--shell-mode
(または -c
) オプションと共に使用する必要があります。
pnpm -rc exec pnpm view \$PNPM_PACKAGE_NAME
--resume-from <package_name>
特定のプロジェクトから実行を再開します。これは、大規模なワークスペースを操作していて、ビルド順序で先行するすべてのプロジェクトを実行せずに、特定のプロジェクトでビルドを再開したい場合に役立ちます。
--parallel
同時実行とトポロジカルソートを完全に無視し、プレフィックス付きのストリーミング出力で、一致するすべてのパッケージで特定のスクリプトをすぐに実行します。これは、たとえば、長時間実行されるビルドプロセスなど、多数のパッケージにわたる長時間実行プロセスに適したフラグです。
--shell-mode, -c
シェル内でコマンドを実行します。UNIX では /bin/sh
を使用し、Windows では \cmd.exe
を使用します。
--report-summary
このオプションについては、run コマンドのドキュメントを参照してください