bahattab
13-12-2008, 02:44 PM
Script Commands
* call
* cd
* chmod
* close
* exit
* get
* help
* keepuptodate
* lcd
* lls
* ln
* lpwd
* ls
* mkdir
* mv
* open
* option
* put
* pwd
* rm
* rmdir
* session
* synchronize
* date
* cal
* cal 2000
* cal 12 2007
* bc
* ls -a
* clear
* who
* who am i
* history
* echo history
* echo `history - check the difference
* man wc
* man - to read the manual page for a particular command.if u dont understand the meaning of particular command you just write that command with man like:
In its scripting functionality, WinSCP supports following commmands.
You can see the very same help for the commands as shown here, if you type command help <command> directly in console.
You can use environment variables in the commands, with syntax %NAME%.
Note that WinSCP treats filenames in case sensitive manner. So even if your server treats filenames in case insensitive manner, make sure you specify case properly1).
call
With SFTP and SCP protocols, executes arbitrary remote shell command. With FTP protocol, executes a protocol command.
call <command>
If current session does not allow execution of arbitrary remote command separate shell session will be automatically opened.
The command must not require user input.
Alias: !
Examples:
call mysqldump --opt -u USERNAME --password=PASSWORD --all-databases > all_databases.sql
call gzip -c all_databases.sql > all_databases.gz
cd
Changes remote working directory for active session.
cd [ <directory> ]
If directory is not specified, changes to home directory.
Examples:
cd /home/martin
cd
chmod
Changes permissions of one or more remote files.
chmod <mode> <file> [ <file2> ... ]
mode can be specified as three or four-digit octal number.
Filename can be replaced with wildcard to select multiple files.
Examples:
chmod 644 index.html about.html
chmod 1700 /home/martin/public_html
chmod 644 *.html
close
Closes session.
close [ <session> ]
Closes session specified by its number. When session is not specified, closes currently selected session.
Examples:
close 1
close
exit
Closes all sessions and terminates the program.
exit
Alias: bye
get
Downloads one or more files from remote directory to local directory.
get <file> [ [ <file2> ... ] <directory>\[ <newname> ] ]
Downloads one or more files from remote directory to local directory. If only one parameter is specified downloads the file to local working directory. If more parameters are specified, all except the last one specify set of files to download. The last parameter specifies target local directory and optionally operation mask to store file(s) under different name. Destination directory must end with backslash. Filename can be replaced with wildcard to select multiple files. To download more files to current working directory use .\ as the last parameter.
Use option command to set transfer options.
Alias: recv
Switches:
Switch Description
-delete Delete source remote file(s) after transfer. Options exclude and include are ignored.
-preservetime Preserve timestamp
-nopreservetime Do not preserve timestamp
-speed=<kibps> Limit transfer speed
Effective options: transfer, confirm, exclude, include
Examples:
get index.html
get -delete index.html about.html .\
get index.html about.html d:\www\
get public_html/index.html d:\www\about.*
get *.html *.png d:\www\*.bak
help
Displays help for script commands.
help [ <command> [ <command2> ... ] ]
Displays list of commands when no parameters are specified. Displays help for each command when some are specified.
Alias: man
Examples:
help ls
help
keepuptodate
Watches for changes in local directory and reflects them on remote one.
keepuptodate [ <local directory> [ <remote directory> ] ]
When directories are not specified, current working directories are synchronized. To stop watching for changes press Ctrl-C.
Note: Overwrite confirmations are always off for the command.
Switches:
Switch Description
-delete Delete obsolete files
-permissions=<mode> Set permissions
-nopermissions Keep default permissions
-speed=<kibps> Limit transfer speed
Effective options: transfer, exclude, include
Examples:
keepuptodate -delete
keepuptodate d:\www /home/martin/public_html
lcd
Changes local working directory for all sessions.
lcd <directory>
Example:
lcd d:\
lls
Lists the contents of local directory.
lls [ <directory> ]\[ <wildcard> ]
If directory is not specified, lists working directory. When wildcard is specified, it is treated as set of files to list. Otherwise, all files are listed.
Examples:
lls *.html
lls d:\
lls
ln
Creates remote symlink.
ln <target> <symlink>
Alias: symlink
Example:
ln /home/martin/public_html www
lpwd
Prints current local working directory (valid for all sessions).
lpwd
ls
Lists the contents of specified directory.
ls [ <directory> ]/[ <wildcard> ]
Lists the contents of specified remote directory. If directory is not specified, lists working directory. When wildcard is specified, it is treated as set of files to list. Otherwise, all files are listed.
Alias: dir
Examples:
ls *.html
ls /home/martin
ls
mkdir
Creates remote directory.
mkdir <directory>
Example:
mkdir public_html
mv
Moves or renames one or more remote files.
mv <file> [ <file2> ... ] [ <directory>/ ][ <newname> ]
Destination directory or newname or both must be specified. Destination directory must end with slash. Operation mask can be used instead of new name. Filename can be replaced with wildcard to select multiple files.
Alias: rename
Examples:
mv index.html public_html/
mv index.html about.*
mv index.html public_html/about.*
mv public_html/index.html public_html/about.html /home/martin/*.bak
mv *.html /home/backup/*.bak
open
Establishes new connection.
open <stored session>
open [ sftp|ftp|scp:// ][ <user> [ :password ] @ ] <host> [ :<port> ]
Establishes connection to given host. Use name of the stored session (to open session, stored in folder, use path syntax “folder/session”). You can also specify host, username, port and protocol directly.
Switches:
Switch Description
-privatekey=<key> Private key path
-timeout=<sec> Server response timeout
-hostkey=<fingerprint> Specifies fingerprint of expected host key. It makes WinSCP automatically accept hostkey with the fingerprint.
-passive Passive mode (FTP protocol only)
Examples:
open sftp://martin@example.com:2222 -privatekey=mykey.ppk
open martin@example.com
open example.com
open
option
Shows or sets value of script options.
option [ <option> [ <value> ] ]
If no parameters are specified, lists all script options and their values. When one parameter is specified only, shows value of the option. When two parameters are specified sets value of the option. Initial values of some options are taken from application configuration, however modifing the options does not change the application configuration.
Options are:
Option Values and description
echo on|off
Toggles echoing of command being executed.
Commands affected: all
batch on|off|abort|continue
Toggles batch mode (all prompts are automatically replied negatively). When on, it is recommended to set confirm to off to allow overwrites. With abort script is aborted when any error occurs. With continue all errors are ignored.
Commands affected: nearly all
confirm on|off
Toggles confirmations (overwrite, etc.).
Commands affected: get, put
transfer binary|ascii|automatic
Transfer mode: binary, ascii (text), automatic (by extension).
Commands affected: get, put, synchronize, keepuptodate
include clear | <mask>[;<mask2>...]
exclude Sets exclusion or inclusion masks (only one can be set at time).
Commands affected: get, put, synchronize, keepuptodate
Aliases: ascii (for option transfer ascii), binary (for option transfer binary)
Examples:
option transfer
option confirm off
option include "*.html; */"
option exclude "*.tpl.php"
option exclude "*.mp3; *.mp4; *.lnk; *.exe; *.msi; My Pictures; My Music; My Videos;"
option
put
Uploads one or more files from local directory to remote directory.
put <file> [ [ <file2> ... ] <directory>/[ <newname> ] ]
If only one parameter is specified uploads the file to remote working directory. If more parameters are specified, all except the last one specify set of files to upload. The last parameter specifies target remote directory and optionally operation mask to store file(s) under different name. Destination directory must end with slash. Filename can be replaced with wildcard to select multiple files. To upload more files to current working directory use ./ as the last parameter.
Use option command to set transfer options.
Switches:
Switch Description
-delete Delete source local file(s) after transfer. Options exclude and include are ignored.
-preservetime Preserve timestamp
-nopreservetime Do not preserve timestamp
-permissions=<mode> Set permissions
-nopermissions Keep default permissions
-speed=<kibps> Limit transfer speed
Alias: send
Effective options: transfer, confirm, exclude, include
Examples:
put index.html
put -delete index.html about.html ./
put -permissions=644 index.html about.html /home/martin/public_html/
put d:\www\index.html about.*
put *.html *.png /home/martin/backup/*.bak
pwd
Prints current remote working directory for active session.
pwd
rm
Removes one or more remote files.
rm <file> [ <file2> ... ]
If remote recycle bin is configured, moves file to the bin instead of deleting it. Filename can be replaced with wildcard to select multiple files.
Examples:
rm index.html
rm index.html about.html
rm *.html
rmdir
Removes one or more remote directories.
rmdir <directory> [ <directory2> ... ]
If remote recycle bin is configured, moves directory to the bin instead of deleting it.
Example:
rmdir public_html
session
Manages opened sessions.
session [ <session> ]
Makes session specified by its number active. When session number is not specified, lists connected sessions.
Examples:
session 1
session
synchronize
Synchronizes directories.
synchronize local|remote|both [ <local directory> [ <remote directory> ] ]
When the first parameter is local, changes from remote directory are applied to local directory. When the first parameter is remote, changes from the local directory are applied to the remote directory. When the first parameter is both, both local and remote directories can be modified.
When directories are not specified, current working directories are synchronized.
Note: Overwrite confirmations are always off for the command.
Switches:
Switch Description
-delete Delete obsolete files
-mirror Mirror mode (synchronize also older files). Ignored for both.
-criteria=<criteria> Comparison criteria. Possible values are time, size and both. Ignored for both mode.
-permissions=<mode> Set permissions
-nopermissions Keep default permissions
-speed=<kibps> Limit transfer speed
Effective options: transfer, exclude, include
Examples:
synchronize remote -delete
synchronize both d:\www /home/martin/public_html
1) This is important particularly for FTP sessions.
script_commands.txt · Last modified: 21 Nov 2008 10:05 by 85.207.241.219 (prikryl)
(http://winscp.net/eng/docs/script_commands)
http://winscp.net/eng/docs/script_commands
* call
* cd
* chmod
* close
* exit
* get
* help
* keepuptodate
* lcd
* lls
* ln
* lpwd
* ls
* mkdir
* mv
* open
* option
* put
* pwd
* rm
* rmdir
* session
* synchronize
* date
* cal
* cal 2000
* cal 12 2007
* bc
* ls -a
* clear
* who
* who am i
* history
* echo history
* echo `history - check the difference
* man wc
* man - to read the manual page for a particular command.if u dont understand the meaning of particular command you just write that command with man like:
In its scripting functionality, WinSCP supports following commmands.
You can see the very same help for the commands as shown here, if you type command help <command> directly in console.
You can use environment variables in the commands, with syntax %NAME%.
Note that WinSCP treats filenames in case sensitive manner. So even if your server treats filenames in case insensitive manner, make sure you specify case properly1).
call
With SFTP and SCP protocols, executes arbitrary remote shell command. With FTP protocol, executes a protocol command.
call <command>
If current session does not allow execution of arbitrary remote command separate shell session will be automatically opened.
The command must not require user input.
Alias: !
Examples:
call mysqldump --opt -u USERNAME --password=PASSWORD --all-databases > all_databases.sql
call gzip -c all_databases.sql > all_databases.gz
cd
Changes remote working directory for active session.
cd [ <directory> ]
If directory is not specified, changes to home directory.
Examples:
cd /home/martin
cd
chmod
Changes permissions of one or more remote files.
chmod <mode> <file> [ <file2> ... ]
mode can be specified as three or four-digit octal number.
Filename can be replaced with wildcard to select multiple files.
Examples:
chmod 644 index.html about.html
chmod 1700 /home/martin/public_html
chmod 644 *.html
close
Closes session.
close [ <session> ]
Closes session specified by its number. When session is not specified, closes currently selected session.
Examples:
close 1
close
exit
Closes all sessions and terminates the program.
exit
Alias: bye
get
Downloads one or more files from remote directory to local directory.
get <file> [ [ <file2> ... ] <directory>\[ <newname> ] ]
Downloads one or more files from remote directory to local directory. If only one parameter is specified downloads the file to local working directory. If more parameters are specified, all except the last one specify set of files to download. The last parameter specifies target local directory and optionally operation mask to store file(s) under different name. Destination directory must end with backslash. Filename can be replaced with wildcard to select multiple files. To download more files to current working directory use .\ as the last parameter.
Use option command to set transfer options.
Alias: recv
Switches:
Switch Description
-delete Delete source remote file(s) after transfer. Options exclude and include are ignored.
-preservetime Preserve timestamp
-nopreservetime Do not preserve timestamp
-speed=<kibps> Limit transfer speed
Effective options: transfer, confirm, exclude, include
Examples:
get index.html
get -delete index.html about.html .\
get index.html about.html d:\www\
get public_html/index.html d:\www\about.*
get *.html *.png d:\www\*.bak
help
Displays help for script commands.
help [ <command> [ <command2> ... ] ]
Displays list of commands when no parameters are specified. Displays help for each command when some are specified.
Alias: man
Examples:
help ls
help
keepuptodate
Watches for changes in local directory and reflects them on remote one.
keepuptodate [ <local directory> [ <remote directory> ] ]
When directories are not specified, current working directories are synchronized. To stop watching for changes press Ctrl-C.
Note: Overwrite confirmations are always off for the command.
Switches:
Switch Description
-delete Delete obsolete files
-permissions=<mode> Set permissions
-nopermissions Keep default permissions
-speed=<kibps> Limit transfer speed
Effective options: transfer, exclude, include
Examples:
keepuptodate -delete
keepuptodate d:\www /home/martin/public_html
lcd
Changes local working directory for all sessions.
lcd <directory>
Example:
lcd d:\
lls
Lists the contents of local directory.
lls [ <directory> ]\[ <wildcard> ]
If directory is not specified, lists working directory. When wildcard is specified, it is treated as set of files to list. Otherwise, all files are listed.
Examples:
lls *.html
lls d:\
lls
ln
Creates remote symlink.
ln <target> <symlink>
Alias: symlink
Example:
ln /home/martin/public_html www
lpwd
Prints current local working directory (valid for all sessions).
lpwd
ls
Lists the contents of specified directory.
ls [ <directory> ]/[ <wildcard> ]
Lists the contents of specified remote directory. If directory is not specified, lists working directory. When wildcard is specified, it is treated as set of files to list. Otherwise, all files are listed.
Alias: dir
Examples:
ls *.html
ls /home/martin
ls
mkdir
Creates remote directory.
mkdir <directory>
Example:
mkdir public_html
mv
Moves or renames one or more remote files.
mv <file> [ <file2> ... ] [ <directory>/ ][ <newname> ]
Destination directory or newname or both must be specified. Destination directory must end with slash. Operation mask can be used instead of new name. Filename can be replaced with wildcard to select multiple files.
Alias: rename
Examples:
mv index.html public_html/
mv index.html about.*
mv index.html public_html/about.*
mv public_html/index.html public_html/about.html /home/martin/*.bak
mv *.html /home/backup/*.bak
open
Establishes new connection.
open <stored session>
open [ sftp|ftp|scp:// ][ <user> [ :password ] @ ] <host> [ :<port> ]
Establishes connection to given host. Use name of the stored session (to open session, stored in folder, use path syntax “folder/session”). You can also specify host, username, port and protocol directly.
Switches:
Switch Description
-privatekey=<key> Private key path
-timeout=<sec> Server response timeout
-hostkey=<fingerprint> Specifies fingerprint of expected host key. It makes WinSCP automatically accept hostkey with the fingerprint.
-passive Passive mode (FTP protocol only)
Examples:
open sftp://martin@example.com:2222 -privatekey=mykey.ppk
open martin@example.com
open example.com
open
option
Shows or sets value of script options.
option [ <option> [ <value> ] ]
If no parameters are specified, lists all script options and their values. When one parameter is specified only, shows value of the option. When two parameters are specified sets value of the option. Initial values of some options are taken from application configuration, however modifing the options does not change the application configuration.
Options are:
Option Values and description
echo on|off
Toggles echoing of command being executed.
Commands affected: all
batch on|off|abort|continue
Toggles batch mode (all prompts are automatically replied negatively). When on, it is recommended to set confirm to off to allow overwrites. With abort script is aborted when any error occurs. With continue all errors are ignored.
Commands affected: nearly all
confirm on|off
Toggles confirmations (overwrite, etc.).
Commands affected: get, put
transfer binary|ascii|automatic
Transfer mode: binary, ascii (text), automatic (by extension).
Commands affected: get, put, synchronize, keepuptodate
include clear | <mask>[;<mask2>...]
exclude Sets exclusion or inclusion masks (only one can be set at time).
Commands affected: get, put, synchronize, keepuptodate
Aliases: ascii (for option transfer ascii), binary (for option transfer binary)
Examples:
option transfer
option confirm off
option include "*.html; */"
option exclude "*.tpl.php"
option exclude "*.mp3; *.mp4; *.lnk; *.exe; *.msi; My Pictures; My Music; My Videos;"
option
put
Uploads one or more files from local directory to remote directory.
put <file> [ [ <file2> ... ] <directory>/[ <newname> ] ]
If only one parameter is specified uploads the file to remote working directory. If more parameters are specified, all except the last one specify set of files to upload. The last parameter specifies target remote directory and optionally operation mask to store file(s) under different name. Destination directory must end with slash. Filename can be replaced with wildcard to select multiple files. To upload more files to current working directory use ./ as the last parameter.
Use option command to set transfer options.
Switches:
Switch Description
-delete Delete source local file(s) after transfer. Options exclude and include are ignored.
-preservetime Preserve timestamp
-nopreservetime Do not preserve timestamp
-permissions=<mode> Set permissions
-nopermissions Keep default permissions
-speed=<kibps> Limit transfer speed
Alias: send
Effective options: transfer, confirm, exclude, include
Examples:
put index.html
put -delete index.html about.html ./
put -permissions=644 index.html about.html /home/martin/public_html/
put d:\www\index.html about.*
put *.html *.png /home/martin/backup/*.bak
pwd
Prints current remote working directory for active session.
pwd
rm
Removes one or more remote files.
rm <file> [ <file2> ... ]
If remote recycle bin is configured, moves file to the bin instead of deleting it. Filename can be replaced with wildcard to select multiple files.
Examples:
rm index.html
rm index.html about.html
rm *.html
rmdir
Removes one or more remote directories.
rmdir <directory> [ <directory2> ... ]
If remote recycle bin is configured, moves directory to the bin instead of deleting it.
Example:
rmdir public_html
session
Manages opened sessions.
session [ <session> ]
Makes session specified by its number active. When session number is not specified, lists connected sessions.
Examples:
session 1
session
synchronize
Synchronizes directories.
synchronize local|remote|both [ <local directory> [ <remote directory> ] ]
When the first parameter is local, changes from remote directory are applied to local directory. When the first parameter is remote, changes from the local directory are applied to the remote directory. When the first parameter is both, both local and remote directories can be modified.
When directories are not specified, current working directories are synchronized.
Note: Overwrite confirmations are always off for the command.
Switches:
Switch Description
-delete Delete obsolete files
-mirror Mirror mode (synchronize also older files). Ignored for both.
-criteria=<criteria> Comparison criteria. Possible values are time, size and both. Ignored for both mode.
-permissions=<mode> Set permissions
-nopermissions Keep default permissions
-speed=<kibps> Limit transfer speed
Effective options: transfer, exclude, include
Examples:
synchronize remote -delete
synchronize both d:\www /home/martin/public_html
1) This is important particularly for FTP sessions.
script_commands.txt · Last modified: 21 Nov 2008 10:05 by 85.207.241.219 (prikryl)
(http://winscp.net/eng/docs/script_commands)
http://winscp.net/eng/docs/script_commands