do = {...}在终端上工作,但不能在ssh上工作

时间:2019-04-10 22:53:38

标签: mikrotik

:if (condition) do={
...
}

通过ssh执行时给出错误提示:

"expected closing brace (line 1 column 20)"

如果剪切并粘贴到Mikrotik终端,它将运行平稳

尝试

:if (condition) do={\

错误:“预期的命令名称(第1行第20列)”

:if (condition) do={\\

错误:“预期的命令名称(第1行第20列)”

#cat / tmp / test

:global x 6;
:if ($x >= 1) do= {
        :put "x=$x x-1=$($x-1)";
        :for i from=0 to="$($x-1)" do= {
                :put "i=$i";
        }
}

#cat / tmp / test | ssh -T -p 22 -o StrictHostKeyChecking =没有用户@地址

expected closing brace (line 1 column 20)
x=6 x-1=5
expected closing brace (line 1 column 33)
i=

这是将代码直接粘贴到MK终端上的结果:

[local] > :global x 6;
[local] > :if ($x >= 1) do= {
{...         :put "x=$x x-1=$($x-1)"; 
{...         :for i from=0 to="$($x-1)" do= {
{{...                 :put "i=$i";           
{{...         }                   
{... }         

x=6 x-1=5
i=0
i=1
i=2
i=3
i=4
i=5

提示?

0 个答案:

没有答案