commandline » Revisions »
Differences
This shows you the differences between the selected revisions of the page.
commandline 2023-05-23 | commandline 2025-04-13 (current) | ||
Line 33: | Line 33: | ||
winscp.exe /keygen keyfile [/output=<file>] [/changepassphrase] | winscp.exe /keygen keyfile [/output=<file>] [/changepassphrase] | ||
winscp.exe /keygen keyfile [/comment=<text>] [/certificate=<file>] | winscp.exe /keygen keyfile [/comment=<text>] [/certificate=<file>] | ||
+ | winscp.exe /copyid /identity=publickey mysession | ||
winscp.exe /update | winscp.exe /update | ||
winscp.exe /info | winscp.exe /info | ||
Line 50: | Line 51: | ||
winscp.com /keygen keyfile [/output=<file>] [/changepassphrase] | winscp.com /keygen keyfile [/output=<file>] [/changepassphrase] | ||
winscp.com /keygen keyfile [/comment=<text>] [/certificate=<file>] | winscp.com /keygen keyfile [/comment=<text>] [/certificate=<file>] | ||
+ | winscp.exe /copyid /identity=publickey mysession | ||
winscp.com /info | winscp.com /info | ||
winscp.com /help | winscp.com /help | ||
</code> | </code> | ||
- | |||
==== [[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 63: | ||
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 71: | ||
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 89: | ||
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 151: | ||
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 194: | ||
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 208: | ||
</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> | ||
winscp.com /keygen mykey.pem -o mykey.ppk -C "Converted from OpenSSH format" | winscp.com /keygen mykey.pem -o mykey.ppk -C "Converted from OpenSSH format" | ||
</code> | </code> | ||
+ | |||
+ | ==== [[copyid]] Public key installation ==== | ||
+ | |||
+ | Use the ''/copyid'' switch to [[guide_public_key#configure_openssh|install your public key in a server's ''authorized_keys'' file]]. Use ''/identity'' switch to specify the path to your key pair in PPK format or public key in ''authorized_keys'' format. Supported with SFTP protocol only. | ||
+ | |||
+ | For example, to install public key from ''mykey.ppk'' key pair file, use: | ||
+ | |||
+ | <code batch> | ||
+ | winscp.com /copyid /identity=mykey.ppk martin@example.com | ||
+ | </code> | ||
+ | |||
+ | The functionality is a replacement for [[&man_ref(1,ssh-copy-id)|OpenSSH ''ssh-copy-id'' script]]. Contrary to the OpenSSH script, it does not require shell interpreter locally. Additionally, it uses SFTP protocol, so it does not rely on a shell access and shell commands on the server. For a compatibility with the script, the ''-i'' switch is understood as an alias to ''/identity''. So, for features supported by WinSCP, you can use the same arguments as for ''ssh-copy-id'', just prefixed with ''/copyid''. | ||
==== [[auxiliary]] Auxiliary ==== | ==== [[auxiliary]] Auxiliary ==== |