This is an old revision of the document!
Executables winscp.exe and winscp.com
WinSCP has two executables:
winscp.exe
: Main executable, supports both GUI and console operation;winscp.com
: Console interface tool, supports console operation only, allows input/output redirection.
Advertisement
This follows two basic executable types of Windows operation system, GUI and console.
Both executables are part of the installation package. Both are as well available for portable use.
winscp.exe
The winscp.exe
executable is the main one.
What you can do with it:-
- When run, it starts by default in GUI mode, showing the Login dialog;
- Using the command-line options, it can be started in console mode;
- It can be used to execute scripts without showing any window (by omitting
/console
parameter).
winscp.com
The winscp.com
executable is a simple tool that internally runs winscp.exe
and provides console interface for it. Its primary purpose is scripting.
What you can do with it:
- Supports console mode only, but allows input/output redirection;
- When run from another console application (such as standard Windows console/command-line window, i.e.
cmd.exe
), it inherits its console.1
The .com
executable needs the .exe
one to operate. It looks for it in the same directory where it is located itself. The .exe
must have exactly the same name.
As WinSCP is an Unicode application, you should use a TrueType console font with a full Unicode support, like “Consolas” or “Lucida Console”.
Advertisement
Input/Output Redirection
For input/output redirection use standard operators:
>
for output redirection;<
for input redirection;|
for piping.
You can not only redirect normal scripting output and input, but even actual file contents. For that use /stdout
and /stdin
command-line switches.
You can also use input/output redirection when running winscp.com
from another application. For example see Guide to SFTP transfers in .NET. Though for this purpose, consider using WinSCP .NET assembly instead.
winscp.exe /console
would pop up in new console window.Back