This is an old revision of the document!
Scripting/Automation
See Command-line parameters to learn how to enter the console/scripting mode.
Advertisement
Příkazy
program akceptuje následující příkazy : call
, cd
, chmod
, close
, exit
, get
, help
, keepuptodate
, lcd
, lls
, ln
, lpwd
, ls
, mkdir
, mv
, open
, option
, put
, pwd
, rm
, rmdir
, session
, synchronize
a různé aliasy
Příkaz help <prikaz>
zobrazuje komplexní popis prikazu
zadaného do povelu zahrnujícího příkladdy a aliasy.
Multiple sessions can be opened simultaneously. Use the session
command to switch between them. Commands can be read from a script file or passed from the command-line using the /command
switch.
By default interactive mode is used (the user is prompted in the same way as in GUI mode). To switch to batch mode (all prompts are automatically answered negatively) use the command option batch on
. For the batch mode it is recommended to turn off confirmations using option confirm off
to allow overwrites (otherwise the overwrite confirmation prompt would be answered negatively, making overwrites impossible).
Note also that the first connection to an SSH server requires verification of the host key, which cannot be automated by scripting. Therefore, some provision for accepting keys must be made prior to running the script to connect to a new host. Never attempt to make the script verify the host key automatically.
WinSCP returns exit code 1, when any command is interrupted due to an error or any prompt is answered Abort (even automatically in batch mode). Otherwise it returns the exit code 0.
The Console Interface Tool
As WinSCP3.exe
is a GUI application, it cannot inherit the console window when run from another console application (such as the Windows command-prompt). To allow this, run WinSCP using the console interface tool WinSCP3.com
(you can find WinSCP3.com
in the main installation package).
Running a Script under a Different Account
If you are going to run the script under a different account (for example using the Windows scheduler), note that WinSCP stores its configuration to the user part of Windows Registry by default. So you may need to either transfer the configuration from your account registry to the other account registry or use the INI file instead.
Advertisement
Note that the configuration also includes verified host keys, which you may need to transfer as well (or confirm manually under the account) to allow automatic execution of the script.
Příklad
Příklad uvedený níže se připojuje k serveru example.com
s uživatelským účtem user
, stáhne soubor a ukončí spojeni. Pak se připojí ke stejnému serveru jako uživatel user2
a nahraje soubor zpět.
# automaticky odpovídej na vše negativně bez zastavení na chybách skriptu option batch on # potlač přepis potvrzení, které jsou v rozporu s dřívějšími option confirm off # Připojení s použitím hesla # open user:password@example.com # připojení open user@example.com # Změň vzdálenou složku cd /home/user # Vynuť si binární přenos option transfer binary # Stahni soubor do lokální složky na d:\ get examplefile.txt d:\ # Odpojení close # Připoj se jako jiný uživatel open user2@example.com # Změn vzdálený adresář cd /home/user2 # nahraj soubor do pracovního adresáře put d:\examplefile.txt # odpoj se close # konec WinSCP exit
Ulož skript do souboru example.txt
. K provedení skriptu použij následující příkaz. Skript se připojí k sezení sám, příkazem open
, bez použití parametru příkazového řádku session
.
winscp3 /console /script=example.txt
Místo použití příkazu open
lze otevřít sezení příkazem command-line parameter.
winscp3 /console /script=example.txt user@example.com