This is an old revision of the document!

Integration with PuTTY

In addition to being based on source code of this popular SSH client, WinSCP can also share site settings with it.

Advertisement

Importing Sites

To import sites (stored sessions) from PuTTY go to Tools > Import Sites on Sites/Stored sessions page of Login dialog.

Opening Current Session in PuTTY

If WinSCP’s limited ability to execute remote commands does not meet your needs, you can let WinSCP open a shell session on the same server in a PuTTY client. Go to Commands > Open in PuTTY.

By default, WinSCP creates temporary site settings for PuTTY (under the name “WinSCP temporary session”). The site settings will contain only the options known by WinSCP, mostly connection options. It will particularly lack any terminal options, so the defaults (Default Settings profile) will apply.

If you want to configure your own options, you can save PuTTY site settings with the same name as a WinSCP site. WinSCP will then instruct PuTTY to open that session (It will not export any settings, nor a connection options).

If WinSCP cannot find the PuTTY executable in the default path (particularly when you are using derived version of PuTTY) you can specify the path in preferences. Optionally you can also instruct WinSCP to send a session password (if known) to PuTTY. However a better approach would be to use public key authentication together with Pageant.

You can also set up WinSCP to Automatically open new sessions in PuTTY.

Opening PuTTY in the Same Directory

If you want PuTTY to open in the same directory as WinSCP, you need to replace its session startup command using -m argument. The syntax of the session startup command would differ with the remote environment, particularly with operating system and shell.

Advertisement

For example with Unix-like system and bash shell the command will be like (note the !/ pattern to pass current remote path):

cd "!/" ; /bin/bash -login

As PuTTY needs the session startup command to be stored in a file, you need to make use of !`command` pattern to store the above command into a temporary file. Also as use of -m switch implies a non-interactive terminal, you need to force an interactive terminal back using -t switch.

Complete PuTTY command line for this will be like (change the shell path according to your system and preferences):

%PROGRAMFILES%\PuTTY\putty.exe -t -m "%TEMP%\putty.txt" !`cmd.exe /c echo cd "!/" ; /bin/bash -login > "%TEMP%\putty.txt"`

This feature is available only in the latest beta release.

Download PuTTY

For your convenience you can download PuTTY also from our download page.

Using KiTTY Instead of PuTTY

If you want to use KiTTY, instead of PuTTY, you need to configure path to KiTTY executable in preferences.

When using KiTTY in registry (non-portable) mode, you also need to specify KiTTY registry key in preferences.

When using KiTTY in portable mode, you need to specify pattern !U@!@ in terminal client path as an alternative way to pass hostname and username to KiTTY:

kitty.exe !U@!@

To open KiTTY in the same directory as WinSCP, you can use either the same technique as with PuTTY; or use KiTTY’s -cmd switch to avoid use of temporary file:

kitty.exe -cmd "cd ""!/""" !U@!@

This feature is available only in the latest beta release.

Using Cygwin/OpenSSH Instead of PuTTY

If you want to use Cygwin/OpenSSH, instead of PuTTY, you need to configure path to Cygwin/OpenSSH executable in preferences. You also need you to specify pattern !U@!@ in arguments to pass hostname and username1:

<path_to_cygwin>\bin\mintty.exe /bin/ssh !U@!@

Advertisement

where <path_to_cygwin> is by default C:\cygwin (32-bit) or C:\cygwin64 (64-bit).

  1. This section was inspired by WinSCP and Cygwin article on Geeks Like Shiny Things blog.Back

Last modified: by martin