Am Sonntag 01 Februar 2009 00:09:42 schrieb Clemens Helfmeier:
> Hi Tommi,
>
> On Sat, Jan 31, 2009 at 11:49:34PM +0100, Tommi M??kitalo wrote:
> > If someone knows a elegant fix for this, go on please. I can fix it, but
> > I have no elegant way to do it. Maybe the most simple one is just to
> > check that special case like:
>
> You could do something like:
> >     cd $dev
>
> ls part* > /dev/null && {
>
> >     for part in part*; do
> >             [ "$part" ne "part*" ] && {
> >                                         path=/mnt/${dev}_${part##*part}
> >                                         mkdir -p ${path}
> >                                         mount ${part} ${path}
> >             }
> >         done
>
> };
>
> i didn't check if it works, but it is an idea to check wether *sh expands
> part* and only then do the for loop.
>
> Clemens

You have to redirect stderr also:

ls part* 2>/dev/null >/dev/null && {
...
}


Otherwise it prints
ls: part*: No such file or directory

is that really that much more elegant? I feel, that my check is more readable 
and also cheaper, because it does not need to fork /bin/ls (I don't know, 
if "test" is a builtin).

But my version is wrong. This seems to work:
        [ "$part" != "part*" ] && {
                ...
        }

Tommi
_______________________________________________
freewrt-developers mailing list
[email protected]
https://www.freewrt.org/lists/listinfo/freewrt-developers

Reply via email to