If you want test the script on terminal, you must put all the script between { }
else each line is treated as single script, and you give errors.
And when you paste terminal output, do not use "code", is not one scipt, and do not remove prompt...
terminal output code
[rex@do-not-remove-prompt] > :local date1 "jan/28/2024";
[rex@do-not-remove-prompt] >
[rex@do-not-remove-prompt] > :local date2 [ /system clock get value-name=date ];
[rex@do-not-remove-prompt] >
[rex@do-not-remove-prompt] > :local months ("jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec");
[rex@do-not-remove-prompt] >
[rex@do-not-remove-prompt] > :local date1month [ :pick $date1 0 3 ];
[rex@do-not-remove-prompt] > :local date1day [ :pick $date1 4 6 ];
[rex@do-not-remove-prompt] > :local date1year [ :pick $date1 7 11 ];
[rex@do-not-remove-prompt] > :local mm ([ :find $months $date1month -1 ] + 1);
[rex@do-not-remove-prompt] > :if ($mm < 10) do={
{... :set date1month ("0" . $mm);
syntax error (line 2 column 6) variable date1mont undefined
[rex@do-not-remove-prompt] > } else={:set date1month $mm;
[rex@do-not-remove-prompt] > }
[rex@do-not-remove-prompt] > :local date1value ($date1year . $date1month . $date1day);
[rex@do-not-remove-prompt] >
[rex@do-not-remove-prompt] >
[rex@do-not-remove-prompt] >
[rex@do-not-remove-prompt] > :local date2month [ :pick $date2 0 3 ];
[rex@do-not-remove-prompt] > :local date2day [ :pick $date2 4 6 ];
[rex@do-not-remove-prompt] > :local date2year [ :pick $date2 7 11 ];
[rex@do-not-remove-prompt] > :local mm ([ :find $months $date2month -1 ] + 1);
[rex@do-not-remove-prompt] > :if ($mm < 10) do={
{... :set date2month ("0" . $mm);
syntax error (line 2 column 10) variable date2month undefined
[rex@do-not-remove-prompt] > } else={
[rex@do-not-remove-prompt] > :set date2month $mm;
syntax error (line 1 column 10) variable date2month undefined
[rex@do-not-remove-prompt] > }
[rex@do-not-remove-prompt] >
[rex@do-not-remove-prompt] > :local date2value ($date2year . $date2month . $date2day);
[rex@do-not-remove-prompt] > if ($date2value >= $date1value) do={
{... /ip hotspot ip-binding {
syntax error (line 2 column 24) package hotspot not found
[rex@do-not-remove-prompt] > :local ui 10.0.0.218
[rex@do-not-remove-prompt] > :local uiList [find address=$ui]
expected end of command (line 1 column 28) parameter addres unexpected on root :find
[rex@do-not-remove-prompt] > :foreach uii in=$uiList do={
{... set $uii disabled=yes
expected end of command (line 2 column 18) parameter disabled unexpected on root :set
[rex@do-not-remove-prompt] > }
[rex@do-not-remove-prompt] > :log error "CL17 has been Disabled"
[rex@do-not-remove-prompt] > }}