commandline » Revisions »
Differences
This shows you the differences between the selected revisions of the page.
commandline 2023-05-24 | commandline 2024-12-16 (current) | ||
Line 1: | Line 1: | ||
====== Command-line Options ====== | ====== Command-line Options ====== | ||
+ | |||
+ | |||
===== [[parameters]] Parameters ===== | ===== [[parameters]] Parameters ===== | ||
Parameters for ''[[executables|winscp.exe]]'' executable: | Parameters for ''[[executables|winscp.exe]]'' executable: | ||
- | <code batch> | + | &amp;lt;code batch&amp;gt; |
winscp.exe site|workspace|folder | winscp.exe site|workspace|folder | ||
- | winscp.exe <session_url>[/path/[file]] | + | winscp.exe &amp;lt;session_url&amp;gt;[/path/[file]] |
- | winscp.exe [mysession] [/sessionname=<name>] | + | winscp.exe [mysession] [/sessionname=&amp;lt;name&amp;gt;] |
winscp.exe [mysession] [/newinstance] | winscp.exe [mysession] [/newinstance] | ||
- | winscp.exe [mysession] /edit <path> | + | winscp.exe [mysession] /edit &amp;lt;path&amp;gt; |
- | winscp.exe [mysession] /browse[=<file>] | + | winscp.exe [mysession] /browse[=&amp;lt;file&amp;gt;] |
winscp.exe [mysession] /synchronize [local_directory] [remote_directory] [/defaults[=secs]] | winscp.exe [mysession] /synchronize [local_directory] [remote_directory] [/defaults[=secs]] | ||
winscp.exe [mysession] /keepuptodate [local_directory] [remote_directory] [/defaults[=secs]] | winscp.exe [mysession] /keepuptodate [local_directory] [remote_directory] [/defaults[=secs]] | ||
winscp.exe [mysession] /refresh [path] | winscp.exe [mysession] /refresh [path] | ||
winscp.exe [mysession] /upload file1 file2 file3 ... [/defaults[=secs]] | winscp.exe [mysession] /upload file1 file2 file3 ... [/defaults[=secs]] | ||
- | winscp.exe [mysession] [/privatekey=<file> [/passphrase=<passphrase>]] | + | winscp.exe [mysession] [/privatekey=&amp;lt;file&amp;gt; [/passphrase=&amp;lt;passphrase&amp;gt;]] |
- | winscp.exe [mysession] [/hostkey=<fingerprint>] | + | winscp.exe [mysession] [/hostkey=&amp;lt;fingerprint&amp;gt;] |
- | winscp.exe [mysession] [/username=<user>] [/password=<pass>] | + | winscp.exe [mysession] [/username=&amp;lt;user&amp;gt;] [/password=&amp;lt;pass&amp;gt;] |
winscp.exe [mysession] [/passwordsfromfiles] | winscp.exe [mysession] [/passwordsfromfiles] | ||
- | winscp.exe [mysession] [/clientcert=<file> [/passphrase=<passphrase>]] | + | winscp.exe [mysession] [/clientcert=&amp;lt;file&amp;gt; [/passphrase=&amp;lt;passphrase&amp;gt;]] |
- | winscp.exe [mysession] [/certificate=<fingerprint>] | + | winscp.exe [mysession] [/certificate=&amp;lt;fingerprint&amp;gt;] |
winscp.exe [mysession] [/passive[=on|off]] [/implicit|explicit] | winscp.exe [mysession] [/passive[=on|off]] [/implicit|explicit] | ||
- | winscp.exe [mysession] [/timeout=<sec>] | + | winscp.exe [mysession] [/timeout=&amp;lt;sec&amp;gt;] |
winscp.exe [mysession] [/rawsettings setting1=value1 setting2=value2 ...] | winscp.exe [mysession] [/rawsettings setting1=value1 setting2=value2 ...] | ||
- | winscp.exe [/console] [/script=<script_file>] [/command command1 command2 ...] | + | winscp.exe [/console] [/script=&amp;lt;script_file&amp;gt;] [/command command1 command2 ...] |
[/parameter // param1 ...] | [/parameter // param1 ...] | ||
- | winscp.exe [/log=<logfile> [/loglevel=<level>] [/logsize=[<count>*]<size>]] | + | winscp.exe [/log=&amp;lt;logfile&amp;gt; [/loglevel=&amp;lt;level&amp;gt;] [/logsize=[&amp;lt;count&amp;gt;*]&amp;lt;size&amp;gt;]] |
- | [/xmllog=<logfile> [/xmlgroups]] | + | [/xmllog=&amp;lt;logfile&amp;gt; [/xmlgroups]] |
- | winscp.exe [/ini=<inifile>] | + | winscp.exe [/ini=&amp;lt;inifile&amp;gt;] |
winscp.exe [/rawconfig config1=value1 config2=value2 ...] | winscp.exe [/rawconfig config1=value1 config2=value2 ...] | ||
winscp.exe [/rawtransfersettings setting1=value1 setting2=value2 ...] | winscp.exe [/rawtransfersettings setting1=value1 setting2=value2 ...] | ||
- | winscp.exe /batchsettings <site_mask> setting1=value1 setting2=value2 ... | + | winscp.exe /batchsettings &amp;lt;site_mask&amp;gt; setting1=value1 setting2=value2 ... |
- | winscp.exe /keygen keyfile [/output=<file>] [/changepassphrase] | + | winscp.exe /keygen keyfile [/output=&amp;lt;file&amp;gt;] [/changepassphrase] |
- | winscp.exe /keygen keyfile [/comment=<text>] [/certificate=<file>] | + | winscp.exe /keygen keyfile [/comment=&amp;lt;text&amp;gt;] [/certificate=&amp;lt;file&amp;gt;] |
winscp.exe /update | winscp.exe /update | ||
winscp.exe /info | winscp.exe /info | ||
winscp.exe /help | winscp.exe /help | ||
- | </code> | + | &amp;lt;/code&amp;gt; |
Parameters for ''[[executables|winscp.com]]'' executable: | Parameters for ''[[executables|winscp.com]]'' executable: | ||
- | <code batch> | + | &amp;lt;code batch&amp;gt; |
winscp.com [/script=script_file] [/command command1 command2 ...] | winscp.com [/script=script_file] [/command command1 command2 ...] | ||
[/parameter // param1 ...] | [/parameter // param1 ...] | ||
winscp.com [/stdout[=binary|chunked]] [/stdin] | winscp.com [/stdout[=binary|chunked]] [/stdin] | ||
- | winscp.com [/log=<logfile> [/loglevel=<level>] [/logsize=[<count>*]<size>]] | + | winscp.com [/log=&amp;lt;logfile&amp;gt; [/loglevel=&amp;lt;level&amp;gt;] [/logsize=[&amp;lt;count&amp;gt;*]&amp;lt;size&amp;gt;]] |
- | [/xmllog=<logfile> [/xmlgroups]] [/nointeractiveinput] | + | [/xmllog=&amp;lt;logfile&amp;gt; [/xmlgroups]] [/nointeractiveinput] |
- | winscp.com [/ini=<inifile>] | + | winscp.com [/ini=&amp;lt;inifile&amp;gt;] |
winscp.com [/rawconfig config1=value1 config2=value2 ...] | winscp.com [/rawconfig config1=value1 config2=value2 ...] | ||
- | winscp.com /batchsettings <site_mask> setting1=value1 setting2=value2 ... | + | winscp.com /batchsettings &amp;lt;site_mask&amp;gt; setting1=value1 setting2=value2 ... |
- | winscp.com /keygen keyfile [/output=<file>] [/changepassphrase] | + | winscp.com /keygen keyfile [/output=&amp;lt;file&amp;gt;] [/changepassphrase] |
- | winscp.com /keygen keyfile [/comment=<text>] [/certificate=<file>] | + | winscp.com /keygen keyfile [/comment=&amp;lt;text&amp;gt;] [/certificate=&amp;lt;file&amp;gt;] |
winscp.com /info | winscp.com /info | ||
winscp.com /help | winscp.com /help | ||
- | </code> | + | &amp;lt;/code&amp;gt; |
==== [[session]] Session ==== | ==== [[session]] Session ==== | ||
- | The first syntax opens the [[session_configuration#site|site]]. To open site, stored in folder, use path syntax &quot;folder/site&quot;. You can also open [[workspace|workspace]] or all sites in site folder. | + | The first syntax opens the [[session_configuration#site|site]]. To open site, stored in folder, use path syntax "folder/site". You can also open [[workspace|workspace]] or all sites in site folder. |
The second creates the session specified by [[session_url|session URL]] and optionally by initial remote path. If the remote path is not ended by slash (''/''), it is treated as path to file (or even directory) that should be [[task_download#url|downloaded]]. | The second creates the session specified by [[session_url|session URL]] and optionally by initial remote path. If the remote path is not ended by slash (''/''), it is treated as path to file (or even directory) that should be [[task_download#url|downloaded]]. | ||
Line 62: | Line 64: | ||
The parameter ''/==sessionname=='' specifies a custom name of the session to be used instead of the automatically generated name in a format ''username@hostname'' or to override the name of the saved site. | The parameter ''/==sessionname=='' specifies a custom name of the session to be used instead of the automatically generated name in a format ''username@hostname'' or to override the name of the saved site. | ||
- | If there's already idle WinSCP instance running, the session(s) opens in the existing instance. To force session open in new instance of WinSCP, use ''/==newinstance=='' parameter. | + | If there's already an idle WinSCP instance running, the session(s) opens in the existing instance. To force the session to open in a new instance of WinSCP, use ''/==newinstance=='' parameter. If no session is specified on command-line, [[ui_login|Login dialog]] opens to select one. |
The parameter ''/==privatekey=='' specifies a [[local_path|local path]] to an [[public_key#private|SSH private key file]]. If the key file is encrypted, use the ''/passphrase'' to specify its passphrase. The passphrase [[#passwordsfromfiles|can be read from a file]]. | The parameter ''/==privatekey=='' specifies a [[local_path|local path]] to an [[public_key#private|SSH private key file]]. If the key file is encrypted, use the ''/passphrase'' to specify its passphrase. The passphrase [[#passwordsfromfiles|can be read from a file]]. | ||
Line 70: | Line 72: | ||
You can use the parameters ''/==username=='' and ''/password'' as an alternative way to specify the credentials. The credentials are normally part of the [[session_url|session URL]]. Using these switches has the advantage of not needing to [[session_url#special|URL-encode special characters]]. The password [[#passwordsfromfiles|can be read from a file]]. | You can use the parameters ''/==username=='' and ''/password'' as an alternative way to specify the credentials. The credentials are normally part of the [[session_url|session URL]]. Using these switches has the advantage of not needing to [[session_url#special|URL-encode special characters]]. The password [[#passwordsfromfiles|can be read from a file]]. | ||
- | With parameter ''/==passwordsfromfiles=='', the values of [[#username|''/password'']], [[#privatekey|''/passphrase'']] and in general all passwords from all sources are interpreted as paths to files, where the actual passwords are read from. The files must use UTF-8 or UTF-16 encoding.((With UTF-8 encoding use of BOM is optional. With UTF-16 the BOM is mandatory. Only the first line of the file is considered. Use of more lines is reserved for the future.)) &beta_feature | + | With parameter ''/==passwordsfromfiles=='', the values of [[#username|''/password'']], [[#privatekey|''/passphrase'']] and in general all passwords from all sources are interpreted as paths to files, where the actual passwords are read from. The files must use UTF-8 or UTF-16 encoding.((With UTF-8 encoding use of BOM is optional. With UTF-16 the BOM is mandatory. Only the first line of the file is considered. Use of more lines is reserved for the future.)) |
The parameter ''/clientcert'' specifies a [[local_path|local path]] to FTPS or WebDAVS [[tls#client_certificate|TLS/SSL client certificate]]. If the certificate is encrypted, use the ''/passphrase'' to specify its passphrase. | The parameter ''/clientcert'' specifies a [[local_path|local path]] to FTPS or WebDAVS [[tls#client_certificate|TLS/SSL client certificate]]. If the certificate is encrypted, use the ''/passphrase'' to specify its passphrase. | ||
Line 88: | Line 90: | ||
Examples: | Examples: | ||
- | &lt;code batch&gt; | + | <code batch> |
- | winscp.exe &quot;My site&quot; | + | winscp.exe "My site" |
- | winscp.exe sftp://martin:password@example.com/ /hostkey=&quot;ssh-rsa 2048 xxxxxxxxxxx...&quot; | + | winscp.exe sftp://martin:password@example.com/ /hostkey="ssh-rsa 2048 xxxxxxxxxxx..." |
winscp.exe scp://test@example.com:2222/ /privatekey=mykey.ppk | winscp.exe scp://test@example.com:2222/ /privatekey=mykey.ppk | ||
winscp.exe ftps://martin:password@example.com/ | winscp.exe ftps://martin:password@example.com/ | ||
- | &lt;/code&gt; | + | </code> |
==== [[logging]] Logging ==== | ==== [[logging]] Logging ==== | ||
Line 150: | Line 152: | ||
Use ''/==defaults=='' parameter along with ''/upload'', ''/synchronize'' or ''/keepuptodate'' to skip the settings dialog and start the operation straight away with default settings. Alternatively you can specify a number of seconds, to actually show the settings dialogs, but have them automatically submit after the specified time elapses. | Use ''/==defaults=='' parameter along with ''/upload'', ''/synchronize'' or ''/keepuptodate'' to skip the settings dialog and start the operation straight away with default settings. Alternatively you can specify a number of seconds, to actually show the settings dialogs, but have them automatically submit after the specified time elapses. | ||
- | Use the ''/refresh'' parameter to reload remote panel of all running instances of WinSCP. If a session is specified on command-line, only instances that have that session as active are refreshed. If a path is specified after the ''/refresh'', only that directory is refreshed. | + | Use the ''/==refresh=='' parameter to reload remote panel of all running instances of WinSCP. If a session is specified on command-line, only instances that have that session as active are refreshed. If a path is specified after the ''/refresh'', only that directory is refreshed. |
It is recommended to escape the arguments with [[#syntax|// switch]]. | It is recommended to escape the arguments with [[#syntax|// switch]]. | ||
Line 193: | Line 195: | ||
Use ''/comment'' switch to change the key comment. | Use ''/comment'' switch to change the key comment. | ||
- | Use ''/certificate'' switch to add an certificate to the key. &beta_feature | + | Use ''/certificate'' switch to add an certificate to the key. |
For example, to convert key ''mykey.pem'' from OpenSSH format to ''mykey.ppk'' in PuTTY format and set its comment: | For example, to convert key ''mykey.pem'' from OpenSSH format to ''mykey.ppk'' in PuTTY format and set its comment: | ||
Line 207: | Line 209: | ||
</code> | </code> | ||
- | For a compatibility with *nix ''[[&man_ref(1,puttygen)|puttygen]]'', the ''-o'', ''-P'', ''-C'', ''%%--old-passphrase%%'' //(latest beta version only)// &beta and ''%%--certificate%%'' switches are understood as aliases to ''/output'', ''/changepassphrase'', ''/comment'', ''/passphrase'' and ''/certificate'' respectively. The ''%%--new-passphrase%%'' is recognized too //(beta only)//. &beta So, for features supported by WinSCP, you can use the same arguments as for ''puttygen'', just prefixed with ''/keygen'': | + | For a compatibility with *nix ''[[https://manpages.debian.org/stable/putty-tools/puttygen.1.en.html|puttygen]]'', the ''-o'', ''-P'', ''-C'', ''%%--old-passphrase%%'' and ''%%--certificate%%'' switches are understood as aliases to ''/output'', ''/changepassphrase'', ''/comment'', ''/passphrase'' and ''/certificate'' respectively. The ''%%--new-passphrase%%'' is recognized too. So, for features supported by WinSCP, you can use the same arguments as for ''puttygen'', just prefixed with ''/keygen'': |
<code batch> | <code batch> |