Hi Alan, yes I looked in the source code and I think the reality clashes with the documentation, which says about loops: "...These work from the command line but are primarily intended for use within NSH scripts". I think the code expects loops only in scripts files and not directly in console, because one of the conditions for this error is "np->np_stream == NULL", which I assume means that no script is being processed.
Petr On Thu, Feb 27, 2020 at 11:59 AM Alan Carvalho de Assis <acas...@gmail.com> wrote: > Hi Peter, > > There could be many reasons, for example if your > CONFIG_NSH_DISABLE_ITEF is enable, etc... > > $ cd apps/ > $ git grep "not valid in this context" > nshlib/nsh_parse.c:const char g_fmtcontext[] = "nsh: %s: not > valid in this context\n"; > > Please take a look, this is a good exercise to master NuttX. > > BR, > > Alan > > On 2/27/20, Petr Buchta <cz7...@googlemail.com.invalid> wrote: > > Hi, > > I keep exploring nuttx and I'm trying to use loops in the nsh console. > The > > problem is I'm geting this error - "nsh: while: not valid in this > context" > > > > What I simply tried was: > > nsh> while true; do myapp; sleep 1; done > > > > Even splitting to multiple lines without the semicolon doesn't work. What > > am I missing? > > > > Also is there a way to iterate over a numeric range? I understand there's > > no support for for loops, even a basic one like - "for i in 1 2 3; do > ...; > > done". So is there a way how to do a similar thing using while loop and > > incrementing a numeric variable? > > > > Thanks for help. > > Petr > > >