pnpm exec
プロジェクトのスコープでシェルコマンドを実行します。
環境変数PATH
にnode_modules/.bin
を追加した状態で実行するため、pnpm exec
は依存関係のパッケージに含まれるコマンドを実行できます。
具体例
あなたのプロジェクトの依存関係にJestが含まれているなら、グローバルにインストールする必要はありません。pnpm exec
で実行するだけです。
pnpm exec jest
実際のところサブコマンドのexec
はオプションです。実行するコマンドがpnpmの組み込みコマンドと衝突しない場合、そのまま実行できます。
pnpm jest
引数
exec
コマンドのオプションは、 exec
というキーワードの前に置かれていなければなりません。 exec
の後に置かれたオプションは実行対象にコマンドに渡されます。
良い例。 pnpm はこのコマンドを再帰的に実行します:
pnpm -r exec jest
しかし、次の例では 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
--no-reporter-hide-prefix
Do not hide prefix when running commands in parallel.
--resume-from <package_name>
特定のプロジェクトから実行を再開します。 このオプションは、大きなワークスペースを使用している場合に便利です。ビルド順序で前にあるすべてのプロジェクトを実行せずに、特定のプロジェクトからビルドを再開できます。
--parallel
Completely disregard concurrency and topological sorting, running a given script immediately in all matching packages. このフラグは、多くのパッケージで長時間実行される処理、例えば、長時間のビルド処理に適しています。
--shell-mode, -c
シェル内でコマンドを実行します。 UNIXでは /bin/sh
を使用し、Windowsでは \cmd.exe
を使用します。
--report-summary
このオプションについては、run コマンドのドキュメントを参照してください。