Date: Fri, 31 Dec 2004 10:36:24 +0100 From: Olivier Gautherot <olivier@gautherot.net> To: Tom Huppi <thuppi@huppi.com> Cc: freebsd-newbies@freebsd.org Subject: Re: Shell Games Message-ID: <41D51D98.7010006@gautherot.net> In-Reply-To: <Pine.BSF.4.58.0412310336440.39721@nuumen.pair.com> References: <49B5BEF2.7CCF22F4.0F75C5EC@netscape.net> <1104458982.622.3.camel@chaucer> <F2007F7E-5AD6-11D9-BAFF-000D932D61F0@ohko.org> <afa60d2404123100235580cb3f@mail.gmail.com> <Pine.BSF.4.58.0412310336440.39721@nuumen.pair.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi folks! >>>FWIW, I've always used 'tcsh' interactively, but almost switched a >>>while back out of disgust at not being able to figure out how to >>>get a one-line foreach/{do_something}/end loop (which would allow >>>me to re-run a complex command easily.) >>> >>> >>I would recommend 'ksh' it does the tasks of both 'csh' and 'sh' with >>advanced programming features, check out http://www.kornshell.com/ >> >> > >As it happens, my attempts to do this one-liner with 'tcsh' were a >direct result of watching someone who used 'ksh'. I thought it >probable that 'bash' also could accomplish this feat (and maybe >'tcsh' also if I could figure it out.) Anyone know? > > The keyword is "for", not "foreach". Try: bash-2.05b$ for n in tata tete titi toto tutu ; do echo "New item" ; echo $n ; done New item tata New item tete New item titi New item toto New item tutu bash-2.05b$ Note that the "do" must be followed directly by a command. A semicolon (i.e. an empty command) is considered a syntax error. My cent worth ;-) Olivier
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41D51D98.7010006>