zzapper | 24 Sep 13:18

simplify and if then else

Hi
Having a Homer Simpson moment, but this must be easy to simplify
if [[ "$LOGNAME" != davidr ]]
then
cd /o/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
else
cd /c/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
fi

--

-- 
zzapper
http://www.successtheory.com/tips/vimtips.html

Peter Stephenson | 24 Sep 13:44
Favicon

Re: simplify and if then else

zzapper wrote:
> Hi
> Having a Homer Simpson moment, but this must be easy to simplify
> if [[ "$LOGNAME" != davidr ]]
> then
> cd /o/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
> else
> cd /c/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
> fi
> 
> -- 
> zzapper
> http://www.successtheory.com/tips/vimtips.html
> 
> 
> 
> 
>  To report this email as spam click https://www.mailcontrol.com/sr/B4ikS7CuQx
> HTndxI!oX7UpIgRUnoDh5vM4IlkUtlbP1h3mjxHrJheu1GxnkVntZMuoKbcOI0SxgpdY6WjzZSeg=
> = .

cd \
${${${LOGNAME:#davidr}:+/o}:-/c}/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin

although if LOGNAME is empty it's treated the same as if it were davidr;
if that's an issue it gets even more clumsy:

${${${${LOGNAME:-x}:#davidr}:+/o}:-/c}

--

-- 
(Continue reading)

Mikael Magnusson | 24 Sep 13:53
Gravatar

Re: simplify and if then else

2008/9/24 Peter Stephenson <pws <at> csr.com>:
> zzapper wrote:
>> Hi
>> Having a Homer Simpson moment, but this must be easy to simplify
>> if [[ "$LOGNAME" != davidr ]]
>> then
>> cd /o/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
>> else
>> cd /c/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
>> fi
>>
> cd \
> ${${${LOGNAME:#davidr}:+/o}:-/c}/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
>
> although if LOGNAME is empty it's treated the same as if it were davidr;
> if that's an issue it gets even more clumsy:
>
> ${${${${LOGNAME:-x}:#davidr}:+/o}:-/c}

A bit longer but arguably still simpler :)
cd /$([[ "$LOGNAME" != davidr ]] && echo o || echo c)/inetpub/wwdev/blabla

--

-- 
Mikael Magnusson

Mikael Magnusson | 24 Sep 14:03
Gravatar

Re: simplify and if then else

2008/9/24 Mikael Magnusson <mikachu <at> gmail.com>:
> 2008/9/24 Peter Stephenson <pws <at> csr.com>:
>> zzapper wrote:
>>> Hi
>>> Having a Homer Simpson moment, but this must be easy to simplify
>>> if [[ "$LOGNAME" != davidr ]]
>>> then
>>> cd /o/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
>>> else
>>> cd /c/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
>>> fi
>>>
>> cd \
>> ${${${LOGNAME:#davidr}:+/o}:-/c}/inetpub/wwwdev/www.some.co.uk/epsystem/epadmin
>>
>> although if LOGNAME is empty it's treated the same as if it were davidr;
>> if that's an issue it gets even more clumsy:
>>
>> ${${${${LOGNAME:-x}:#davidr}:+/o}:-/c}
>
> A bit longer but arguably still simpler :)
> cd /$([[ "$LOGNAME" != davidr ]] && echo o || echo c)/inetpub/wwdev/blabla

If all you want to do is avoid writing the full dirname twice, this also
works in very new versions:
() {
local dir
if [[ "$LOGNAME" != davidr ]]; then
  dir=o
else
(Continue reading)


Gmane