Перейти до

Добавление трафика через скрипт


Рекомендованные сообщения

Вот этот скрипт добавляет трафик пользователю test чере консольный конфигуратор.

 

./sgconf_xml -s 127.0.0.1 -p 5555 -a admin -w 123456 -r '<SetUser>
<login value="test" /> <cash add="50" /> </SetUser>'

 

вот этот скрипт делает выборку из базы

mysql -uroot -p123456 stg_database -e "SELECT login FROM users"`

 

вот, надо соединить их во едино, т.е. чтоб трафик добавлялся всем пользователям из этого mysql запроса, голову уже сломал не могу ничего придумать, если присваивать результат запроса переменной то получается строка, мож кто подскажет как сделать.

 

Заранее спс.

 

--------------------------------------------------------------------------------------

madf спс за алгоритм, скрипт добавляет всем пользователям трафик (используется консольный конфигуратор, положить его в папку со скриптом или указать к нему полный путь):


#!/bin/bash
LOGINS=`mysql -uroot -p123456 stg_database -e "SET NAMES koi8r; SELECT login FROM users"  --skip-column-names --batch`

for login in $LOGINS
do
./sgconf_xml -s 127.0.0.1 -p 5555 -a admin -w 123456 -r "<SetUser> <login value=\""$login"\" /> <cash add=\"50\" /> </SetUser>"
done

Ссылка на сообщение
Поделиться на других сайтах
  Select * From users, не?

 

не SELECT login FROM users, выбираем все логины из базы, и их надо подставлять в первый скрипт, только вот выдераются из мускуля строкой и как их разделить я не знаю.

Ссылка на сообщение
Поделиться на других сайтах

а к слову интересно кто вообще делал какие-либо скрипты для добавления трафика все пользователям может поделитесь ?

 

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

Ссылка на сообщение
Поделиться на других сайтах

слово perl я тоже знаю но не умею на нем кодить, вот и прошу конкретно, подсказать как соеденить, не плохо бы если б это было на bash

Ссылка на сообщение
Поделиться на других сайтах

#!/bin/bash
LOGINS=`mysql -ustg -p123456 stg -e "SELECT login FROM users" --skip-column-names --batch`

for login in $LOGINS
do
   echo "$login"
   ./sgconf_xml -s 127.0.0.1 -p 5555 -a admin -w 123456 -r '<SetUser><login value="$login" /><cash add="50" /> </SetUser>'
done

 

(с) man mysql

Ссылка на сообщение
Поделиться на других сайтах

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

Ссылка на сообщение
Поделиться на других сайтах

Чуть переделал, трабла не в кодировке была, а в кавычках, оказывается переменные заключенные в одинарные кавычки не работают :loop:

 

#!/bin/bash
LOGINS=`mysql -uroot -p123456 stg_database -e "SET NAMES koi8r; SELECT login FROM users"  --skip-column-names --batch`

for login in $LOGINS
do
./sgconf_xml -s 127.0.0.1 -p 5555 -a admin -w 123456 -r "<SetUser> <login value=\""$login"\" /> <cash add=\"50\" /> </SetUser>"
done

 

Скрипт продублировал в шапке может кому понадобится, всем спс за помощь.

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...