> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

# サンドボックス環境でコマンドを実行する

> サンドボックス内でコマンドを実行し、出力を取得します。

チュートリアルのこのパートでは、サンドボックス内でコマンドを実行し、その出力を取得します。以下の例では、エラーチェック、タイムアウト、作業ディレクトリの指定など、よく使われるパターンを紹介します。

```python theme={"system"}
# 基本的なコマンド
sandbox.exec(["echo", "Hello"]).result()

# コマンドがゼロ以外の終了コードを返した場合は SandboxExecutionError を送出します
sandbox.exec(["ls", "/nonexistent"], check=True).result()

# コマンドがタイムアウト時間を超えた場合は SandboxTimeoutError を送出します
sandbox.exec(["sleep", "60"], timeout_seconds=5).result()

# 指定したディレクトリで実行します
sandbox.exec(["ls"], cwd="/app").result()
```

<h2 id="parallel-execution">
  並列実行
</h2>

各コマンドの完了を待たずに次のコマンドを開始する必要がない場合は、複数のコマンドを並列で実行します。これにより、コマンドが独立している場合に合計の実行時間を短縮できます。

```python theme={"system"}
import cwsandbox

# exec() はコマンドが終了するのを待たずに Process をすぐに返します
p1 = sandbox.exec(["sleep", "1"])
p2 = sandbox.exec(["sleep", "1"])
p3 = sandbox.exec(["sleep", "1"])

# 出力が必要な場合は .result() を呼び出します - 合計 ~1 秒で、3 秒ではありません
cwsandbox.result([p1, p2, p3])
```

ストリーミング、エラー処理、およびプロセス制御については、[Execution guide](/ja/products/sandboxes/client/guides/execution) を参照してください。
