URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9695
[ Назад ]

Исходное сообщение
"Как сравнить каждый элемент массива с определенным числом bash"

Отправлено begin000 , 18-Июн-13 10:20 
Добрый день!
Подскажите пожалуйста, как сравнить каждый элемент массива с определенным числом?
Скрипт на bash'e не получается. ((

array[1]=10
array[2]=20
array[3]=30

for i in ${array[*]}; do
if [ "$i" < "40" ]
then
    echo "$i"
else
    echo "Один иэ элементов больше числа 40"
fi
done

Спасибо!


Содержание

Сообщения в этом обсуждении
"Как сравнить каждый элемент массива с определенным числом bash"
Отправлено Andrey Mitrofanov , 18-Июн-13 10:45 
> сравнить каждый элемент массива с определенным числом?
> Скрипт на bash'e не получается. ((

Не унывай, дружище!! Твой скрипт делает то, что ты написал. _Сравнивает кажы элемент.
Проблема решена же.


"Как сравнить каждый элемент массива с определенным числом bash"
Отправлено begin000 , 18-Июн-13 10:56 
Да вот не работает...

Смена знана на > в конструкции
if [ "$i" < "40" ]

Всеравно выводт
then
    echo "$i"
а не
else
    echo "Один иэ элементов больше числа 40"

Или я чет не понимаю... ((


"Как сравнить каждый элемент массива с определенным числом bash"
Отправлено begin000 , 18-Июн-13 11:05 
> Да вот не работает...
> Смена знана на > в конструкции
> if [ "$i" < "40" ]
> Всеравно выводт
> then
>     echo "$i"
> а не
> else
>     echo "Один иэ элементов больше числа 40"
> Или я чет не понимаю... ((

Все. Понял в чем проблема. Синтаксис. if (( $i < 40 ))


"Как сравнить каждый элемент массива с определенным числом bash"
Отправлено begin000 , 18-Июн-13 11:18 
Ой! Вот еще один вопросик. Подскажите плиз!

Есть файл file.txt в нем текст, например, Hello World и числа 10 20 30 40 и т.д..
я беру из файла только числа

a=`cat /usr/local/etc/file.txt | grep 'Hello World' | tr -d 'Hello Wrd'`

Далее мне нужно поместить их в массив. Чисто СИНТАКСИЧЕСКИ как это сделать?

array[0]=$a - Так будет верно?
array[]=$a - Или так будет верно?

Спасибо за помощь!


"Как сравнить каждый элемент массива с определенным числом bash"
Отправлено михалыч , 18-Июн-13 13:32 
> Ой! Вот еще один вопросик. Подскажите плиз!
> Есть файл file.txt в нем текст, например, Hello World и числа 10
> 20 30 40 и т.д..
> я беру из файла только числа
> a=`cat /usr/local/etc/file.txt | grep 'Hello World' | tr -d 'Hello Wrd'`
> Далее мне нужно поместить их в массив. Чисто СИНТАКСИЧЕСКИ как это сделать?
> array[0]=$a - Так будет верно?
> array[]=$a - Или так будет верно?
> Спасибо за помощь!

array=($a)


"Как сравнить каждый элемент массива с определенным числом bash"
Отправлено begin000 , 18-Июн-13 14:06 
>> Ой! Вот еще один вопросик. Подскажите плиз!
>> Есть файл file.txt в нем текст, например, Hello World и числа 10
>> 20 30 40 и т.д..
>> я беру из файла только числа
>> a=`cat /usr/local/etc/file.txt | grep 'Hello World' | tr -d 'Hello Wrd'`
>> Далее мне нужно поместить их в массив. Чисто СИНТАКСИЧЕСКИ как это сделать?
>> array[0]=$a - Так будет верно?
>> array[]=$a - Или так будет верно?
>> Спасибо за помощь!
> array=($a)

Спасибо!