Mikrotik scripting: Porovnání verzí
Z Wiki UnArt Slavičín
Skočit na navigaciSkočit na vyhledávání
Bez shrnutí editace |
Bez shrnutí editace |
||
(Není zobrazeno 14 mezilehlých verzí od 4 dalších uživatelů.) | |||
Řádek 3: | Řádek 3: | ||
== Co v dokumentaci nenajdete == | == Co v dokumentaci nenajdete == | ||
Tyto poznámky jsou pro verzi 2.9. | Tyto poznámky jsou pro verzi 2.9. | ||
* Skriptování v Mikrotiku vyžaduje značnou míru trpělivosti. | |||
** Skript, spuštěný z repositáře /System scripts nevypisuje žádné chybové hlášky ani u syntaktických chyb, jediná možnost, jak skripty ladit, je zkoušet jej provádět řádek po řádku z konzole | |||
** Pokud vám něco nefunguje, bude chyba buď na vaší straně, nebo v dokumentaci | |||
* Poznámky musí začínat znakem # umístěným na 0. pozici v řádku, jinak je MK vyhodnocuje jako běžný příkaz/výraz | |||
* Lokální proměnné: | * Lokální proměnné: | ||
**deklarují se pomocí :local nebo :set. | **deklarují se pomocí :local nebo :set. | ||
**Od verze 2.9 už nefunguje rušení proměnných pomocí :unset - proměnná se ruší tak, že v příkazu :set nebo :local neudám její hodnotu!!! | **Od verze 2.9 už nefunguje rušení proměnných pomocí :unset - proměnná se ruší tak, že v příkazu :set nebo :local neudám její hodnotu!!! | ||
**Pokud je proměnná deklarována jako lokální v bloku do={...}, není mimo tento blok vidět! | **Pokud je proměnná deklarována jako lokální v bloku do={...}, není mimo tento blok vidět! | ||
**typ proměnné lze zjistit pomocí :typeof. Příklad: | **typ proměnné lze zjistit pomocí :typeof. Příklad: Skript opravující Busy u DHCP Leases | ||
:put [:typeof promenna] | :put [:typeof promenna] | ||
== Příklady skriptů == | == Příklady skriptů == | ||
[[Fair Bandwidth Sharing for simple queues]] | |||
*[[Fair Bandwidth Sharing for simple queues]] | |||
*[[Redirect web during network failure]] | |||
*[[Redirect dynamic dhcp leases]] | |||
*[[Disable forwarding]] | |||
*[[Mazání nepopsaných adres z DHCP serveru]] | |||
*[[Skript pro změnu DNS serverů v Mikrotiku]] | |||
*[[TOP 10]] | |||
*[[Skript opravující Busy u DHCP Leases]] | |||
*[[Skripty pro optiku]] | |||
*[[Nastavení doby vypůjčky na delší čas]] | |||
*[[Skript kontroly queues a dhcp serveru]] | |||
*[[Skript pro zálohování na e-mail]] | |||
*[[Skript pro nastavení datumu a času]] | |||
*[[Skript na nastavení watchdogu v Mikrotiku]] |
Aktuální verze z 22. 5. 2012, 09:34
Jako všechno v Mikrotiku, i skriptování má velmi špatnou dokumentaci.
Co v dokumentaci nenajdete
Tyto poznámky jsou pro verzi 2.9.
- Skriptování v Mikrotiku vyžaduje značnou míru trpělivosti.
- Skript, spuštěný z repositáře /System scripts nevypisuje žádné chybové hlášky ani u syntaktických chyb, jediná možnost, jak skripty ladit, je zkoušet jej provádět řádek po řádku z konzole
- Pokud vám něco nefunguje, bude chyba buď na vaší straně, nebo v dokumentaci
- Poznámky musí začínat znakem # umístěným na 0. pozici v řádku, jinak je MK vyhodnocuje jako běžný příkaz/výraz
- Lokální proměnné:
- deklarují se pomocí :local nebo :set.
- Od verze 2.9 už nefunguje rušení proměnných pomocí :unset - proměnná se ruší tak, že v příkazu :set nebo :local neudám její hodnotu!!!
- Pokud je proměnná deklarována jako lokální v bloku do={...}, není mimo tento blok vidět!
- typ proměnné lze zjistit pomocí :typeof. Příklad: Skript opravující Busy u DHCP Leases
:put [:typeof promenna]