Remote SSH External Tools
File | Settings | Tools | Remote SSH External Tools for Windows and Linux
PyCharm | Settings | Tools | Remote SSH External Tools for macOS
Available only in PyCharm Professional: download to try or compare editions
This page describes the settings that you can configure for remote external tools. For more information about adding and using external tools, refer to External tools.
Use the toolbar buttons to manage the list of available external tools. Clear checkboxes for tools and groups that you want to keep but not have available in menus.
- Add
Add a new external tool.
- Remove
Remove the selected tool or group.
- Edit
Edit the selected tool.
- Up
Move the selected tool up in the list.
- Down
Move the selected tool down in the list.
- Copy
Move the selected tool down in the list.
When you create, edit, or copy an external tool, you need to provide the tool's settings.
- Name
The name of the tool that will be used as the action for running the tool in the PyCharm interface.
warning
Make sure that you specify the absolute paths for the tool's settings, not paths relative to the project.
- Arguments
The arguments passed to the executable file, as you would specify them on the command line.
Use spaces to separate individual arguments.
Use double quotes for arguments and paths that contain spaces.
Use a backslash to escape double quotes that are part of the argument or path.
For example:
-Dmy.prop=\"quoted_value\" "second arg" third" "arg
tip
You can use built-in IDE macros to specify the name of the current file, paths relative to the project root, and other contextual information for the tool.
Specify the connection settings for the remote server where you want to run the tool via SSH.
- Current Vagrant
Run the tool on the currently running Vagrant virtual machine. For more information, refer to Vagrant: Working with Reproducible Development Environments.
- SSH Configuration
Run the tool on a server accessible via one of the configured SSH configurations. Alternatively, you can choose to Select SSH configuration on every run.
- Synchronize files after execution
Automatically load the changes to your project files made by the external tool. If the tool does not modify any files in your project, you can disable this option.
- Make console active on message in stdout
Activate the console when the tool uses the standard output stream.
- Make console active on message in stderr
Activate the console when the tool uses the standard error stream.
- Output filters
Specify filters to turn absolute file paths, line and column numbers in the output messages into hyperlinks. This will allow you to jump from the console output directly to the relevant location in the file. Each line is a regular expression that defines a separate filter.
For example, let's say some tool produces lines of output similar to the following:
/path/to/file.conf:42:10 WARNING: Some message
Then you can define a filter like this one:
$FILE_PATH$:$LINE$:$COLUMN$.*
note
For these filters to work correctly, the tool must output the absolute path to the file. Line and column numbers, if it is present, must be on the same line as the file path.