Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 5 Jun 2016 13:15:25 -0400
From:      Baho Utot <baho-utot@columbus.rr.com>
To:        freebsd-questions@freebsd.org
Subject:   Re: sh[it] and What am I missing here?
Message-ID:  <4daed7a2-9a0b-15d9-0bb2-31227f8fcddd@columbus.rr.com>
In-Reply-To: <575453F9.9070508@holgerdanske.com>
References:  <31b2cfb1-1da8-9262-3f03-d964776c905e@columbus.rr.com> <575453F9.9070508@holgerdanske.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 06/05/16 12:31, David Christensen wrote:
> On 06/05/2016 08:38 AM, Baho Utot wrote:
> ...
>> root@baho-utot:~ # set
> ...
>> shell   /bin/csh
> ...
>> tcsh    6.18.01
> ...
>> OK tcsh as I thought
> ...
>> OK switch shells
>>
>> root@baho-utot:~ # /bin/sh
>> # set
> ...
>> Why is the SHELL variable still set to /bin/csh
> ...
>
> Because you are invoking a program (/bin/sh) and that program did not 
> modify the SHELL environment variable.
>
>
> On 06/05/2016 09:15 AM, jd1008 wrote:
> > Do I understand correctly that you want bash to be your shell?
> > If so, you can run (as root), the command
> > chsh <username>
>
> +1
>
> Take a look at:
>
> https://www.freebsd.org/doc/en/articles/linux-users/shells.html
>
>
> David

I understood that, But I do not want to change the default shell.
I only want to create a script ( sh script ) and run if from a clean 
machine with just base install nothing else and then run my sh script to 
build some ports.  That's were the trouble lies.  ie functions not 
returning status for example:

test.sh
chmod +x test.sh

#!/bin/sh

func() {
     echo "Yep it's me"
     return 1
}

if [ func ] ; then                 # if [ 1 = func ] or if [ 1 -eq func 
] doesn't work either
     echo "This works"
fi

./test.sh

[: func: unexpected operator



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4daed7a2-9a0b-15d9-0bb2-31227f8fcddd>