Format files from the command line
Last modified: 02 May 2022
PyCharm can format your code according to the configured code style settings. You can also apply your code style formatting to the specified files from the command line.
The command-line formatter launches an instance of PyCharm in the background and applies the formatting. It will not work if another instance of PyCharm is already running. In this case, you can perform code style formatting from the running instance. Use the command-line formatter for automated regular maintenance of a large codebase with many contributors to ensure a consistent coding style.
To be able to format files, install and enable plugins with support for the corresponding file types in PyCharm (for example, the Shell Script plugin to format shell script files).
You can find the executable for running PyCharm in the installation directory under bin. To use this executable as the command-line launcher, add it to your system PATH
as described in Command-line interface.
- Syntax
pycharm64.exe format [<options>] <path ...>
- Examples
Format two specific files from the C:\Data\src directory using the default code style settings:
>
pycharm64.exe format C:\Data\src\hello.html C:\Data\src\world.html
Recursively format all files in the C:\Data\src directory including all subdirectories using the default code style settings:
>
pycharm64.exe format -r C:\Data\src
Non-recursively format all the .xml and .html files in the C:\Data\src directory using code style settings from C:\Data\settings.xml:
>
pycharm64.exe format -s C:\Data\settings.xml -m *.xml,*.html C:\Data\src
PyCharm includes a script for running the command-line code formatter. By default, it is located in the application package: PyCharm.app/Contents/bin/format.sh
- Syntax
./format.sh [<options>] <path ...>
- Examples
Format two specific files from the ~/Data/src directory using the default code style settings:
$
./format.sh ~/Data/src/hello.html ~/Data/src/world.html
Recursively format all files in the ~/Data/src directory including all subdirectories using the default code style settings:
$
./format.sh -r ~/Data/src
Non-recursively format all the .xml and .html files in the ~/Data/src directory using code style settings from ~/Data/settings.xml:
$
./format.sh -s ~/Data/settings.xml -m *.xml,*.html ~/Data/src
You can find the script for running PyCharm in the installation directory under bin. To use this script as the command-line launcher, add it to your system PATH
as described in Command-line interface.
- Syntax
pycharm.sh format [<options>] <path ...>
- Examples
Format two specific files from the ~/Data/src directory using the default code style settings:
$
pycharm.sh format ~/Data/src/hello.html ~/Data/src/world.html
Recursively format all files in the ~/Data/src directory including all subdirectories using the default code style settings:
$
pycharm.sh format -r ~/Data/src
Non-recursively format all the .xml and .html files in the ~/Data/src directory using code style settings from ~/Data/settings.xml:
$
pycharm.sh format -s ~/Data/settings.xml -m *.xml,*.html ~/Data/src