bash переменная не работаеть

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Slimy
Сообщения: 1689
ОС: openSuSE 11.2 GM (GеMор едишн)

bash переменная не работаеть

Сообщение Slimy »

Не знаю чего не так делаю но

Код: Выделить всё

$home_dir=$HOME
echo $home_dir
echo $HOME
ln -s /windows/D/Films/ Films "$home_dir"

выводит

Код: Выделить всё

./homemaker.sh
./homemaker.sh: line 4: =/home/mf: Нет такого файла или каталога

/home/mf
ln: указанная цель `' не является каталогом: Нет такого файла или каталога

почему к переменной не присваивается значение? Что я делаю не так?
Если уже ничего не помогает - прочти инструкцию.
sysinstall - гадость :)
ASUS A6q00Vm Pentium-M 1.7 GHz, 2Gb RAM, 160Gb HDD,
GeForce Go 7300 64Mb video
Спасибо сказали:
Gugloed
Сообщения: 50

Re: bash переменная не работаеть

Сообщение Gugloed »

Код: Выделить всё

$home_dir=$HOME

это не имеет смысла.
чтобы определить новую переменную, нужно использовать строку

Код: Выделить всё

home_dir=$HOME


А Вашем же случае… $home_dir инетрепретируется просто как пустая строка. Строчка становится эквиваелнтном =/home/mf, что смысла не имеет. Такой команда нет.
Красная площадь — это не только точное время, но и культурная программа с цирком и зоопарком.
Спасибо сказали:
Slimy
Сообщения: 1689
ОС: openSuSE 11.2 GM (GеMор едишн)

Re: bash переменная не работаеть

Сообщение Slimy »

спасибо помогло :). Вопрос такой $ используется только когда нужно извлечь значение переменной? Создание и присваивание без $ ? Зачем такие сложности в РНР единый подход и проблем нет.
Если уже ничего не помогает - прочти инструкцию.
sysinstall - гадость :)
ASUS A6q00Vm Pentium-M 1.7 GHz, 2Gb RAM, 160Gb HDD,
GeForce Go 7300 64Mb video
Спасибо сказали:
Аватара пользователя
cy6erGn0m
Сообщения: 119
ОС: MandrivaLinux/Solaris 10

Re: bash переменная не работаеть

Сообщение cy6erGn0m »

Просто так сделано давным давно, и думаю это вполне оправдано. Кроме того, нет от этого никаких сложностей, всё как и обычно: просто аккуратность соблюдайте :) зато можно делать всякие подстановки хитрые и трактоваться они будут однозначно, например


Код: Выделить всё

test=$HOME=test


совершенно очевидно что у меня будет в переменную test запишется /home/cy6ergn0m=test
I want to Believe!

They must find it difficult...
Those who have taken authority as the truth,
Rather than trusth as the authority.
/G.Messey/
Спасибо сказали: