Вопрос по башу

Итак, имеется код (для примера):

Цитата:
#! /bin/sh

a=3
b=2
r=$b-$a
echo $r

в итоге на выходе получаем :

Цитата:
3-2

ожидалось получить "1" (т.е. результат разницы "3" и "2").

В чем я туплю? ((

В баше не

Надо писать так:

#! /bin/sh

a=3
b=2
r=`expr $a - $b`
echo $r

Re: В баше не

Rinus написал(а):
Надо писать так:

#! /bin/sh

a=3
b=2
r=`expr $a - $b`
echo $r

спасиба, рабтает =)
вопрос: а почему так? ) Почему не сделали как во всех языках? )

ну и раз уж по

ну и раз уж по башу спросил -какую книгу по нему посоветуете?

А ты не bash

А ты не bash используешь, а sh :)

Так во всех

Так во всех языках, когда ты работаешь со строковыми переменными. В баше все переменный строковые и обрабатываются соотвествтвенно.
Если хочешь чтобы они интерпретировались как числовые, надо явно указать это.

Re: Так во всех

KiberGus написал(а):
Так во всех языках, когда ты работаешь со строковыми переменными. В баше все переменный строковые и обрабатываются соотвествтвенно.
Если хочешь чтобы они интерпретировались как числовые, надо явно указать это.

дык читал, что в баше нету типов переменных ((
з.ы. а есть большая разница между sh и башем?
я думал нету )

Ну в баше

Ну в баше просто один тип переменных и он наиболее близок к строковому типу.

Re: Ну в баше

KiberGus написал(а):
Ну в баше просто один тип переменных и он наиболее близок к строковому типу.

угу, эт я понял уже ))
ну да ладно, вопрос решен.

з.ы. Кто что подскажет по поводу книг? в гугл не отправлять, нужны книги которые вы сами читали/учились/понравились, т.е. самое лучшее ))

Хех, а вот

Хех, а вот моя-то как-раз любимая книга и была гуглем :)
С этой книгой я не только баш учил, но и многое, очень многое другое :)
_________________
chmod -x chmod

Re: Хех, а вот

vit-root написал(а):
Хех, а вот моя-то как-раз любимая книга и была гуглем :)
С этой книгой я не только баш учил, но и многое, очень многое другое :)
_________________
chmod -x chmod

да просто хочеца взять одну нормальную книгу и учится по ей (мб и в живом виде ;) )

На www.lindevel.ru

На www.lindevel.ru была не плохая, но точно не помню.

Ещё работает

Ещё работает такой вариант:

echo $((3-2))

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".