--- layout: docs page_title: 'Commands: fmt' description: | Rewrite Nomad config and job files to canonical format --- # Command: fmt The `fmt` commands check the syntax and rewrites Nomad configuration and jobspec files to canonical format. It can be used to improve readability and enforce consistency of style in Nomad files. ## Usage ```plaintext nomad fmt [flags] paths ... ``` Formats Nomad agent configuration and job file to a canonical format. If a path is a directory, it will recursively format all files with .nomad and .hcl extensions in the directory. If you provide a single dash (-) as argument, fmt will read from standard input (STDIN) and output the processed output to standard output (STDOUT). Note that, this command will check the syntax against [HCL2](https://github.com/hashicorp/hcl/blob/hcl2/README.md), the second generation of Hashicorp Configuration Language. Running this command with deprecated HCL1 jobspec will result in errors. ## Format Options: - `-check`: Check if the files are valid HCL files. If not, exit status of the command will be 1 and the incorrect files will not be formatted. This flag overrides any `-write` flag value. - `-list`: List the files which contain formatting inconsistencies. Defaults to `-list=true`. - `-recursive`: Process files in subdirectories. By default, only the given (or current) directory is processed. - `-write`: Overwrite the input files. Defaults to `-write=true`. ## Examples ```shell-session $ cat agent.hcl server { enabled = true bootstrap_expect = 1 } client { enabled = true } ``` ```shell-session $ nomad fmt agent.hcl ``` ```shell-session $ cat agent.hcl server { enabled = true bootstrap_expect = 1 } client { enabled = true } ```