Re: Real sh? Or other efficient shell for non-interactive scripts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



I believe if you re-read a little more closely, the whole point of the
exercise was not to have the #! at the top of the script.

On 04/24/2015 01:36 PM, Valeri Galtsev wrote:
> On Fri, April 24, 2015 12:04 pm, John R Pierce wrote:
>> On 4/24/2015 9:47 AM, Gordon Messmer wrote:
>>> On 04/24/2015 03:57 AM, Pete Geenhuizen wrote:
>>>> if you leave it out the script will run in whatever environment it
>>>> currently is in.
>>> >>>I'm reasonably certain that a script with no shebang will run with
>>> /bin/sh.<<<  I interpret your statement to mean that if a user is using
>>> ksh and enters the path to such a script, it would also run in ksh.
>>> That would only be true if you "sourced" the script from your shell.
>> oh fun, just did some tests (using c6.latest).   if you're in bash,
>> >>>./script (sans shebang)<<< runs it in bash.  if you're in dash or csh,
>> ./script runs it in sh.    if you're in ksh, it runs it in ksh.
>>
> Wow! Surprise ;-)
>
> I just tested it on my FreeBSD workstation, and all works as expected
> (i.e. the script obeys shebang). Just in case, here is the contents of my
> test script:
>
>
> ########
> #!/bin/sh
>
> readlink /proc/$$/file
> ########
>
> ( note that that "file" is because I'm using FreeBSD /proc, for Linux you
> may need to replace the line with something like:
>
> readlink /proc/$$/exe
>
> Now the fun part
>
> in bash:
>
> $ echo $0
> bash
>
> $ ./test
> /bin/sh
>
> in tcsh
>
> % echo $0
> tcsh
>
> % ./test
> /bin/sh
>
> in zsh
>
> % echo $0
> zsh
>
> % ./test
> /bin/sh
>
> But yet funnier thing:
>
> $ bash ./test
> /usr/local/bin/bash
>
> $ tcsh ./test
> /bin/tcsh
>
> $ zsh ./test
> /usr/local/bin/zsh
>
>
> Well, no creepy surprises for me ! ;-)
>
> (you can do the same on Linux of your choice and see if it behaves ;-)
>
> Thanks.
> Valeri
>
> ++++++++++++++++++++++++++++++++++++++++
> Valeri Galtsev
> Sr System Administrator
> Department of Astronomy and Astrophysics
> Kavli Institute for Cosmological Physics
> University of Chicago
> Phone: 773-702-4247
> ++++++++++++++++++++++++++++++++++++++++
> _______________________________________________
> CentOS mailing list
> CentOS@xxxxxxxxxx
> http://lists.centos.org/mailman/listinfo/centos

-- 
public gpg key id: AE60F64C

_______________________________________________
CentOS mailing list
CentOS@xxxxxxxxxx
http://lists.centos.org/mailman/listinfo/centos




[Index of Archives]     [CentOS]     [CentOS Announce]     [CentOS Development]     [CentOS ARM Devel]     [CentOS Docs]     [CentOS Virtualization]     [Carrier Grade Linux]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Linux USB]
  Powered by Linux