Bash scripting -- Usage of arrays

Freddie Cash fcash-ml at sd73.bc.ca
Tue Nov 29 21:34:57 GMT 2005


On November 29, 2005 01:09 pm, Jayesh Jayan wrote:
> Today I was trying to script using arrays in FreeBSD 5.4 but it doesn't
> work.

> Below is a sample script which I used.
> ******************************************************
> #!/bin/bash

> array=( zero one two three four);
> echo "Elements in array0:  ${array[@]}"
> ******************************************************

> It works fine on RedHat server.
> Below is the output.

> # sh array.sh
> Elements in array0:  zero one two three four

/bin/sh on Linux is actually /bin/bash.

> Below is the out put from the FreeBSD server using the same code.
> -bash-2.05b# sh aa.sh
> aa.sh: 3: Syntax error: word unexpected (expecting ")")

/bin/sh on FreeBSD is /bin/sh, the original Bourne shell.  It doesn't use 
that syntax

> Please guide me on how to use arrays on freebsd too.

Install the bash1, bash2, or bash port and use /usr/local/bin/bash to 
execute the script.

Works correctly on my 5.4 and 6.0 systems using the bash-emulation in zsh.

-- 
Freddie Cash, LPIC-1 CCNT CCLP      Helpdesk / Network Support Tech.
School District 73                  (250) 377-HELP [377-4357]
fcash-ml at sd73.bc.ca


More information about the freebsd-hackers mailing list