Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

shell сравнение строк

19K
07 сентября 2006 года
tmp13
3 / / 06.09.2006
cnstart="";
echo start=\"$cnstart\"
if [ $cnstart="k" ]; then
echo $snstart;
echo startif;
cnend=$cnstart;
echo $cnend;
else
echo " next";
fi
и попадает в if!!!
это как??? что тут не правильно???
2
07 сентября 2006 года
squirL
5.6K / / 13.08.2003
[quote=tmp13]cnstart="";
echo start=\"$cnstart\"
if [ $cnstart="k" ]; then
echo $snstart;
echo startif;
cnend=$cnstart;
echo $cnend;
else
echo " next";
fi
и попадает в if!!!
это как??? что тут не правильно???[/quote]
есть мнение, что писать надо так:
 
Код:
if [ "$cnstart" = "k" ]; then


обратите внимание на пробелы с обеих сторон от =
потому, что $cnstart в вашем случае есть пустое место. без пробелов скрипт вам даст всегда истинное условие, а если написать правильно, с пробелами - даст ошибку синтаксиса.

ЗЫ: Убедительная просьба - прочитать правила форума. одно из правил гласит - когда постите код, пользуйтесь тэгами. в следующий раз применю санкции :)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог