Jump to content

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


Recommended Posts

Вот этот скрипт добавляет трафик пользователю 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

Link to post
Share on other sites
  Select * From users, не?

 

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

Link to post
Share on other sites

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

 

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

Link to post
Share on other sites

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

Link to post
Share on other sites

#!/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

Link to post
Share on other sites

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

Link to post
Share on other sites

Чуть переделал, трабла не в кодировке была, а в кавычках, оказывается переменные заключенные в одинарные кавычки не работают :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

 

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

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...