--- title: "スクリプトの記述" url: https://docs.catalyst.zoho.com/ja/cli/v1/scripts/write-script/ description: "Catalystは、テストまたはデプロイプロセス中のCLIおよびターミナルコマンドの実行を自動化する機能をスクリプトの形で提供します。" last_updated: 2026-08-17T12:16:04Z service: All Services type: general --- # スクリプトの記述 ### はじめに プロジェクトのクライアントとファンクションのスクリプトを定義して実行できます。スクリプトを通じて、Catalyst CLIコマンドやローカル環境のターミナルコマンドを実行できます。 スクリプトは、プロジェクトディレクトリのルートにある[ `catalyst.json` ](https://docs.catalyst.zoho.com/ja/cli/v1/project-directory-structure/catalyst-json/)ファイルの`functions`または`client`スコープ内の`scripts`フィールドに記述する必要があります。このファイルには、プロジェクトディレクトリコンポーネントの設定とターゲット情報が含まれています。`catalyst.json`設定ファイルのサンプルコード構造を以下に示します。 ![CLI Write Script](https://catalyst-docs-development.zohostratus.in/images/cli/catalyst-scripts/catalyst_cli_scripts_catalyst_json.webp) ### サンプルスクリプト 上の画像に示されたスクリプトについて説明します。この`catalyst.json`ファイルのコードは、2つのライフサイクルスクリプトと2つのカスタムスクリプトを定義しています。ライフサイクルスクリプトの実行によりカスタムスクリプトが実行されます。ここでのスクリプトは、プロジェクトのクライアントコンポーネント用に定義されているため、クライアントのスコープ内に含まれています。 コードは以下のとおりです: ```json { "functions": { "targets": [ "catly" ], "ignore": [], "source": "functions" }, "client": { "source": "client/app/build", "ignore": [], "scripts": { "packageJson": "cd client && cp client-package.json app/build/", "build": "cd client/app && yarn install && yarn build", "preserve": "catalyst run client:build && catalyst run client:packageJson", "predeploy": "catalyst run client:build && catalyst run client:packageJson" } } } ``` 上記の例のように、ライフサイクルスクリプト内でカスタムスクリプトを[ ` catalyst run ` ](https://docs.catalyst.zoho.com/ja/cli/v1/scripts/run-script/)コマンドを使用して実行する場合、実行対象のコンポーネントを指定する必要があります。これは、たとえば`cd`(ディレクトリ変更)ターミナルコマンドを実行する場合に必要です。そのコンポーネントのディレクトリのルートが、ディレクトリ変更コマンドの実行元ディレクトリとみなされます。 上記で記述されたスクリプトのロジックフローは次のとおりです: 1. クライアントコンポーネントに対して`catalyst serve`または`catalyst deploy`コマンドを実行すると、コマンドの実行前にそれぞれ`preserve`または`predeploy`スクリプトが開始されます。 2. `preserve`と`predeploy`スクリプトには同じコマンド実行が含まれています。最初のアクションは`catalyst run client:build`コマンドで、クライアントコンポーネントの`build`カスタムスクリプトを実行します。2番目のアクションはcatalyst run client:packageJsonで、クライアントコンポーネントの`packageJson`スクリプトを実行します。 3. `build`カスタムスクリプトは次のアクションを順番に実行します: * ターミナルが`client/app`ディレクトリに移動します。 * `yarn install`コマンドが実行され、Yarnパッケージマネージャーを使用してNode.jsの依存関係がインストールされます。 * `yarn build`コマンドが実行され、クライアントアプリケーションがビルドされます。 4. `packageJson`カスタムスクリプトは次のアクションを順番に実行します: * ターミナルが`client`ディレクトリに移動します。 * `client-package.json`ファイルがクライアントディレクトリからコピーされ、`app/build`ディレクトリに貼り付けられます。 これらのスクリプトが実行された後、コンポーネントがサーブまたはデプロイされます。