The SCP/Shell page on the Advanced Site Settings dialog allows user to configure shell specific options. Mostly it helps WinSCP to modify remote environment to match its requirements. The options are mainly used when working with SCP protocol. Even if you are using SFTP protocol, some of the options are made available for you, in case you are using some feature that require separate shell session.1
To reveal this page you need to select SCP on Login dialog. Some of the options are available even for SFTP file protocol with page being labeled Shell.
Refer to documentation of page sections:
Use the Shell option to specify what shell WinSCP will use. The
bash shell is recommended for working with WinSCP. If your default shell does not work with WinSCP, you can specify another shell. Typing the full path (e.g.
/usr/local/bin/bash) is recommended. You can also make use of the option to alter session startup. For example to change the user after login (known as
su).2 The command to start shell is interpreted by the SSH server, so the syntax can change with the server.3
WinSCP needs to know what environment variable contains exit code of the last command. By default it tries to autodetect that. However the autodetection can fail and also slows down login. You may specify the variable directly instead in Return code variable box.
Use the Listing command to change shell command, WinSCP uses to list directory contents. Particularly if your shell does not print group name in directory listing by default, use
ls -gla to enforce it.
When the Ignore LS warnings checkbox is ticked, WinSCP will ignore any error messages printed by the
ls command as long as it produces some regular output too. It also makes WinSCP ignore exit code
1 of the command.
The Try to get full timestamp makes WinSCP attempt to use
--full-time option for
ls command. It is particularly useful when you want to use some synchronization command, for what you need precise timestamps. When it is ticked, WinSCP will add the option to the first
ls command it issues. When the (first) command fails for whatever reason, WinSCP will stop using the option for the whole session. However in some cases WinSCP may fail to detect that the command failed. Then you need to disable the feature manually.
When Lookup user groups is ticked, WinSCP will use
groups command on start-up to list groups the user belongs too. It will then offer the list on Properties dialog to allow user select the group instead of typing it. Initially the checkbox is in undefined state, making WinSCP trying to list the groups, but suppressing any errors, if listing fails.
During WinSCP start up, you may receive an error indicating a problem with the
groups command. Untick the Lookup user groups box. More than likely your Linux environment doesn’t have the
groups command available.
On start-up WinSCP will by default clear all aliases on commands it uses. This is done to avoid unexpected behavior (e.g. alias
rm -i). If there are no aliases influencing command behavior, this feature can be disabled by unticking Clear aliases. This setting speeds up the login process.
WinSCP also clears set of environment variables know to influence the format of directory listing. These are:
LS_BLOCK_SIZE. If no such variable is set, untick Clear national variables. This setting speeds up the login process.
scp command to perform the transfer. On some SSH servers, particularly ssh.com, the
scp may be a link to
scp2 command. The
scp2 is in fact SFTP server, that WinSCP cannot talk to in SCP mode. Check Use scp2 with scp1 compat. to make WinSCP try to force the
scp command to use really the SCP protocol (using
-1 option). Note that if the server supports
scp2, it probably supports SFTP protocol too.
- When fallback to SCP protocol occurs, all options on the page, including the disabled ones, are used. In case you need to modify some of the disabled options, make sure you explicitly select SCP protocol on the Login dialog.Back
- See FAQ for details.Back
- Typically it is regular shell command interpreted by the default shell of user.Back