## Spustiť príkaz

Pole 'Spustiť príkaz' záznamu môže obsahovať príkaz, ktorý sa spustí po výbere akcie Spustiť príkaz. Tu je v podstate možné použiť čokoľvek, čo môžete urobiť v ponuke 'Štart – Spustiť' vo Windows.

Navyše, Password Safe je schopný odovzdať príkazu argumenty, ako napríklad používateľské meno, heslo atď., ako je popísané nižšie. To vám umožňuje "naprogramovať/zautomatizovať" pomerne zložité akcie, ako napríklad spustenie programu vzdialeného prístupu (napríklad PuTTY) a odovzdať mu používateľské meno a heslo spojené so záznamom.

Vo všeobecnosti sa 'premenné' pred odovzdaním na vykonanie nahrádzajú hodnotami, ktoré sú s nimi spojené. Na označenie premennej sa používa znak dolára ("$").

- Premenné sú zadané ako '$name' a rozlišujú veľké a malé písmená. Názvy premenných vždy začínajú abecedným znakom a zvyšné znaky sú alfanumerické. Názov premennej sa ukončí buď výskytom nealfanumerického znaku (napríklad medzera), alebo koncom príkazu.

- Ak chcete v príkaze použiť premennú bezprostredne nasledovanú alfanumerickým znakom, uzavrite názov premennej do zložených zátvoriek, napr. "${názovpremennej}reťazec".
- Ak chcete použiť znak '$' v reťazci ako bežný text (ktorý nebude znamenať že nasledujúci text je názov premennej), ukončite ho pomocou spätného lomítka ('\'), napr. '\$text' sa zmení na '$text' a nebude sa považovať za premennú s názvom 'text'.
- Ak chcete použiť spätné lomítko pred znakom '$' ako spätné lomítko, escapujte ho spätným lomítkom, napr. '\\$name' sa vo výslednom texte zmení na '\$name' a '$name' sa bude považovať za premennú. Spätné lomítko nemusí byť escapované, pokiaľ nepredchádza znaku '$', čo označuje nasledujúcu premennú.
- Za premennou môže nasledovať číselná hodnota v hranatých zátvorkách, ktorá sa nazýva 'indexová hodnota'. Pred indexovou hodnotou 'n' môže byť znak '+' alebo '-', napr. [-2] alebo [2] alebo [+2]. Password Safe považuje index, ktorý sa rovná nule, za celé pole.

- Aktuálne sa rozpoznávajú nasledujúce premenné:

- Súvisiace s aplikáciou:

appdir | Priečinok obsahujúci aplikáciu Password Safe. Pozri poznámky 1 a 2 nižšie.

- Súvisiace s databázou:

dbdir | Priečinok aktuálne otvorenej databázy. Pozri poznámky 1 a 2 nižšie.
fulldb | Úplná cesta, názov súboru a prípona aktuálne otvorenej databázy. Pozri poznámku 2 nižšie.
dbname | Názov aktuálne otvoreného súboru databázy.
dbextn | Aktuálna prípona otvorenej databázy.

- Súvisiace s aktuálnym záznamom:

g alebo group | Skupina (úplná stromová štruktúra od koreňa so skupinami oddelenými bodkami)
G alebo GROUP | Skupina obsahujúca tento záznam
t alebo title | Názov
u alebo user | Používateľské meno
p alebo password | Heslo
e alebo email | Email
a alebo autotype | AutoType. Pozri poznámku 5 nižšie.
url | URL adresa
n or n[0] | Úplné pole Poznámky (taktiež: notes alebo notes[0]). Pozri poznámku 3 nižšie.
n[i] alebo notes[i] | ntý riadok poľa Poznámky počítaný od začiatku, t.j. i=1 je prvý riadok, i=2 znamená druhý riadok atď. Pozri poznámku 4 nižšie.
n[-i] alebo notes[-i] | ntý riadok poľa Poznámky počítaný od konca, t.j. i=1 je posledný riadok, i=2 znamená predposledný riadok atď. Pozri poznámku 4 nižšie.

Poznámky |
--- | ---
1 | Hodnoty priečinku (appdir alebo dbdir) nemajú koncovku '\'. Nezabudnite ju pridať, ak ju potrebujete do príkazu.
2 | Obsah premenných (vrátane hodnôt priečinka a celej cesty) môže obsahovať prázdne znaky. Pre správne vykonanie príkazu možno budete musieť výsledok uzavrieť do úvodzoviek.
3 | Ak pole Poznámky obsahuje viac ako jeden riadok, bude obsahovať akýkoľvek vložený znak carriage return (CR) alebo line feed (LF). To môže spôsobiť problémy pri vykonávaní keďže CR a/alebo LF bude brané ako 'enter'.
4 | Akýkoľvek koncový CR a/alebo LF sa odstránia z jednotlivých riadkov vybraných z poľa Poznámky.
5 | Ak je v príkaze prítomná premenná AutoType, AutoType sa vykoná, keď bude cieľové okno aktívne. Premenná a jej hodnota, ak je prítomná, sa odstránia z vykonaného reťazca. Táto premenná sa môže objaviť kdekoľvek v príkaze, pretože iba určuje čo Password Safe urobí po vykonaní reťazca príkazu. Na rozdiel od iných premenných, táto bude môcť nadobúdať hodnotu ktorá prepíše aktuálnu hodnotu záznamu. Formát je nasledujúci ("$autotype" môže nahradiť "$a" v nasledujúcich príkladoch):
$a | Použiť aktuálnu hodnotu záznamu.
${a} | Použiť aktuálnu hodnotu záznamu (používa sa, ak text nasleduje bezprostredne za premennou '$a').
$a(hodnota) | Použiť reťazec AutoType zadaný medzi okrúhlymi zátvorkami.
${a}(hodnota) | Použiť reťazec AutoType zadaný medzi okrúhlymi zátvorkami.

Poznámka: V prípade potreby nezabudnite okolo reťazca pridať úvodzovky, napr. ak priečinok databázy obsahuje medzery, na prístup k textovému súboru v ňom budete potrebovať nasledovné (s úvodzovkami):

    '$dbdir\\$dbname.txt'

Všimnite si že spätné lomítko je escapované, aby sa '$dbname' rozpoznalo ako premenná.

V systéme Windows sa vykoná bežná substitúcia premenných prostredia (zadaných ako %variable_name%). Napríklad: '%windir%\notepad.exe' sa môže (v závislosti od vašej inštalácie) zmeniť na 'C:\Windows\notepad.exe'. Aktuálne hodnoty nastavené vo vašom prostredí je možné určiť spustením 'cmd.exe' a zadaním 'set' bez akýchkoľvek parametrov. Akákoľvek neznáma premenná prostredia sa v príkaze ponechá nezmenená, napr. %xyz%\notepad.exe zostane ako %xyz%\notepad.exe, ak premenná 'xyz' nie je nastavená. Poznámka: Premenné prostredia Windows nerozlišujú veľké a malé písmená.

### Príklady

- Nasledujúci príkaz spôsobí, že program Putty sa pripojí k serveru 'myHost' s použitím používateľského mena a hesla záznamu:

      "C:\Program Files\PuTTY\putty.exe" -ssh ${u}@myHost 22 -pw $p

- Týmto sa otvorí nová inštancia Password Safe so zadanou databázou (za toto ďakujem Daveovi):

       ${autotype}(\p\n)"${appdir}\pwsafe.exe" \UNC\cesta\k\database.psafe3

- Aby to fungovalo, tak sa uistite že je nastavená táto možnosť v Nastaveniach na karte Systém: "Povoliť viacero inštancií".
- Taktieť môžete nastaviť akciu pre dvojklik pre tento záznam na možnosť "Spustiť príkaz".