Jump to content

Запись скрипта в Mikrotik командой из терминала, как сделать?


Recommended Posts

Posted

Здравствуйте, никак не получается у меня впихнуть в source тело скрипта

 

скрипт создается, только имя с пустым полем, пробовал разные функции, нужно, чтобы вводился с терминала в winbox

 

команда

 

/system script
add name=bakup-to-sdcard policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon

 

 

 

нужно добавить к ней source=

так чтобы в поле скрипта записался этот текст

 


:local tmpdate [/system clock get date];
:local months ("jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec");
:local month [ :pick $tmpdate 0 3 ];
:local mm ([ :find $months $month -1 ] + 1);
:if ($mm < 10) do={ :set mm ("0" . $mm); }
:local date ([:pick $tmpdate 4 6] ."-" . $mm ."-" . [:pick $tmpdate 7 11])
:local myname "router1100"
:local fname ($myname."_".$date);
:local bname ($myname."_".$date.".backup");
:local ename ($myname."_".$date.".rsc");
/system backup save name=("sd1-part1/BAK/".$"fname");
:delay 10;
/export file=("sd1-part1/BAK/".$"fname");
:delay 10;

 

 

Есть тут гуру по скриптам и термналу ?

Posted (edited)

разобрался

 

готовый скрипт для записи в систему из терминала , делает резервные копии конфигурации на sd карту каждые 15 дней - использую в RB1100

 

 

/system scheduler
add interval=2w1d name=2-Week-bakup on-event=\
    "/system script run bakup-to-sdcard" policy=\
    ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \
    start-date=mar/18/2023 start-time=20:00:00
/system script
add dont-require-permissions=no name=bakup-to-sdcard owner=admin policy=\
    ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":\
    local tmpdate [/system clock get date];\r\
    \n:local months (\"jan\",\"feb\",\"mar\",\"apr\",\"may\",\"jun\",\"jul\",\
    \"aug\",\"sep\",\"oct\",\"nov\",\"dec\");\r\
    \n:local month [ :pick \$tmpdate 0 3 ];\r\
    \n:local mm ([ :find \$months \$month -1 ] + 1);\r\
    \n:if (\$mm < 10) do={ :set mm (\"0\" . \$mm); }\r\
    \n:local date ([:pick \$tmpdate 4 6] .\"-\" . \$mm .\"-\" . [:pick \$tmpda\
    te 7 11])\r\
    \n:local myname \"router1100\"\r\
    \n:local fname (\$myname.\"_\".\$date);\r\
    \n:local bname (\$myname.\"_\".\$date.\".backup\");\r\
    \n:local ename (\$myname.\"_\".\$date.\".rsc\");\r\
    \n/system backup save name=(\"sd1-part1/BAK/\".\$\"fname\");\r\
    \n:delay 10;\r\
    \n/export file=(\"sd1-part1/BAK/\".\$\"fname\");\r\
    \n:delay 10;"

 

Edited by SLAVCHIKS
Posted

Не надо так собирать конфигурации. Должен быть некий внешний сервер, который сам в определенное время запрашивает данные (экспорт конфига) со всех микротиков и сохраняет их в базу, а не текстовые файлы. С полученными данными легко работать и всегда можно понять, собраны данные или нет. А подобного рода скрипты могут не отработать, и никак нельзя будет это отследить.

Posted
10 часов назад, SLAVCHIKS сказал:

готовый скрипт для записи в систему из терминала , делает резервные копии конфигурации на sd карту каждые 15 дней - использую в RB1100

    \n/export file=(\"sd1-part1/BAK/\".\$\"fname\");\r\

из личного опыта - попробуйте делать не "export", а "export terse" - такой формат удобнее парсить в случае необходимости.

Posted
15 часов назад, Saab95 сказал:

export compact еще удобнее в последствии разбирать.

в очередной раз подумал, что я чего-то не знаю.

но нет, наоборот ))

"export" и "export compact" выдают идентичные текстовики конфигов на выходе. и их совершенно неудобно парсить (по крайней мере, мне - не знаю, как вам).

Posted

Нормально его разбирать, сначала поймать название раздела, после собирать и разбирать элементы с переносом строк.

 

При export terse объем самого текстового конфига увеличивается в разы, особенно если в конфиге несколько тысяч записей в каждом разделе - это сколько одинаковых приписок будет добавлено.

Posted
В 18.03.2023 в 21:14, Saab95 сказал:

и сохраняет их в базу

Я конечно извиняюсь но текстовые конфиги так и просятся под гит 😉 ну или это устаревшая технология?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.