Объявление массива [закрыто]

Как я могу объявить массив в Ubuntu? Я пробовал код ниже

Unix=('Zero' 'One' 'Two')

#echo -n "area2[0] = "
echo ${area2[@]}
# Aha, zero-based indexing (first element of array is [0], not [1]).

#echo -n "area2[1] = "
#echo $ {area2[1]}  

Это не работает в Ubuntu.

2
задан 1 October 2013 в 12:24

2 ответа

Я приведу вам полный пример:

#!/bin/bash    
array=("first item" "second item" "third" "item")

echo "Number of items in original array: ${#array[*]}" 

for ix in ${!array[*]} 
do
    printf "   %s\n" "${array[$ix]}" 
done 

arr=(${array[*]}) 
echo "After unquoted expansion: ${#arr[*]}" 

for ix in ${!arr[*]} 
do
    printf "   %s\n" "${arr[$ix]}" 
done 

arr=("${array[*]}") 
echo "After * quoted expansion: ${#arr[*]}" 

for ix in ${!arr[*]} 
do
    printf "   %s\n" "${arr[$ix]}" 
done 

arr=("${array[@]}") 
echo "After @ quoted expansion: ${#arr[*]}" 

for ix in ${!arr[*]}     
do
    printf "   %s\n" "${arr[$ix]}" 
done

Надеюсь, это поможет.

0
ответ дан 1 October 2013 в 12:24

Если Вы назвали/назвали свой массив Unix, почему Вы используете area2?!? Или Вы, объявил, прежде чем этот массив назвал area2? Попробуйте это:

Unix=('Zero' 'One' 'Two')

echo "Unix = ${Unix[@]}"
echo "Unix[0] = ${Unix[0]}"
echo "Unix[1] = ${Unix[1]}"

И прочитайте некоторую документацию о Массивах в Bash.

5
ответ дан 1 October 2013 в 12:24

Другие вопросы по тегам:

Похожие вопросы: