> For the complete documentation index, see [llms.txt](https://docs.takomo.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.takomo.io/parameter-resolvers/built-in-parameter-resolvers/command-resolver.md).

# Command resolver

The command resolver executes a specified shell command and uses the command output as a parameter value.

### Properties

Here are the properties of the command resolver:

| Key                    | Required | Type    | Description                                                                                                                                                                              |
| ---------------------- | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| resolver               | yes      | string  | Resolver name, this must be **cmd**.                                                                                                                                                     |
| command                | yes      | string  | Shell command to execute.                                                                                                                                                                |
| confidential           | no       | boolean | Conceal the resolved parameter value from logs, defaults to **false**                                                                                                                    |
| immutable              | no       | boolean | Mark the parameter as immutable, defaults to **false**                                                                                                                                   |
| exposeStackCredentials | no       | boolean | Make the current stack's AWS credentials available for the shell command. Defaults to false. Added in Takomo v3.11.0.                                                                    |
| exposeStackRegion      | no       | boolean | Make the current stack's region available for the shell command. Defaults to false. Added in Takomo v3.11.0.                                                                             |
| capture                | no       | string  | Controls how to capture the output of the executed shell command. By default, all output is captured. To capture only the last line, set this to **last-line.** Added in Takomo v3.11.0. |

### Environment variables available in the shell command

The following environment variables are available in the shell command:

| Name                     | Description                                                                                                        |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------ |
| AWS\_ACCESS\_KEY\_ID     | If `exposeStackCredentials` is **true**, this will hold the access key id of credentials of the current stack.     |
| AWS\_SECRET\_ACCESS\_KEY | If `exposeStackCredentials` is **true**, this will hold the secret access key of credentials of the current stack. |
| AWS\_SESSION\_TOKEN      | If `exposeStackCredentials` is **true**, this will hold the session token of credentials of the current stack.     |
| AWS\_SECURITY\_TOKEN     | If `exposeStackCredentials` is **true**, this will hold the session token of credentials of the current stack.     |
| AWS\_DEFAULT\_REGION     | IF `exposeStackRegion` is **true**, this will hold the region of the current stack.                                |

### Example

Use contents of the **/home/password.txt** file as parameter value:

```yaml
parameters:
  Password:
    resolver: cmd
    command: cat /home/password.txt
```

##
