nixp.ru v3.0

18 октября 2017,
среда,
19:49:47 MSK

DevOps с компанией «Флант»
Cronis написал 7 февраля 2006 года в 11:52 (1157 просмотров) Ведет себя неопределенно; открыл 5 тем в форуме, оставил 14 комментариев на сайте.


#!/bin/bash
login=$1
param=$2
oldValue=$3
newValue=$4
admin=$5
admin_ip=$6
echo "User: '$login'. Parameter '$param' changed from '$oldValue' to '$newValue' admin $admin ip $admin_ip" >> /tmp/users
tariff=$newValue
if [ "$param" = "Tariff_now" ]; then
    echo "$param = Tariff_now " >> /tmp/users
    rm -f /var/stargazer/users/$login/QoS
    echo "Удалили файл" >> /tmp/users
    cat << EOF >/var/stargazer/users/$login/QoS
    EOF
    echo "Создали файл" >> /tmp/users
    chmod 0755 /var/stargazer/users/$login/QoS
    echo "Поставили права" >> /tmp/users
fi

Проблема в том, что нет входа в if. Хотя допустим вам пример из /tmp/users:

User: 'google'. Parameter 'Tariff_now' changed from 'Student' to 'GrandMaster' admin  ip

Получается я сравниваю Tariff_now с Tariff_now, а получается false

rgo

для сравнения надо пользовать не `=’, а `==’.