borin 0 Posted 2008-06-07 07:12:26 Share Posted 2008-06-07 07:12:26 Вот этот скрипт добавляет трафик пользователю 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
Neelix 33 Posted 2008-06-07 07:36:22 Share Posted 2008-06-07 07:36:22 Select * From users, не? Link to post Share on other sites
borin 0 Posted 2008-06-07 07:42:36 Author Share Posted 2008-06-07 07:42:36 Select * From users, не? не SELECT login FROM users, выбираем все логины из базы, и их надо подставлять в первый скрипт, только вот выдераются из мускуля строкой и как их разделить я не знаю. Link to post Share on other sites
nallien 3 Posted 2008-06-07 09:56:04 Share Posted 2008-06-07 09:56:04 а к слову интересно кто вообще делал какие-либо скрипты для добавления трафика все пользователям может поделитесь ? а по сабжу - увы не подскажу как, но если тебе выборка идет строкой, то есть же разделяющий символ - значит имеем массив... со всеми вытекающими. Link to post Share on other sites
grayich 0 Posted 2008-06-07 10:00:54 Share Posted 2008-06-07 10:00:54 perl Link to post Share on other sites
borin 0 Posted 2008-06-07 10:04:24 Author Share Posted 2008-06-07 10:04:24 слово perl я тоже знаю но не умею на нем кодить, вот и прошу конкретно, подсказать как соеденить, не плохо бы если б это было на bash Link to post Share on other sites
madf 279 Posted 2008-06-07 14:52:01 Share Posted 2008-06-07 14:52:01 #!/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
borin 0 Posted 2008-06-08 05:01:47 Author Share Posted 2008-06-08 05:01:47 madf, спасибо за алгоритм, единственно при передаче этого значения консольному конфигуратору вылазит ошибка, а если просто так login вбить то все проходит на ура, думаю где то тут трабла с кодировками, буду копать дальше. Link to post Share on other sites
borin 0 Posted 2008-06-08 14:31:05 Author Share Posted 2008-06-08 14:31:05 Чуть переделал, трабла не в кодировке была, а в кавычках, оказывается переменные заключенные в одинарные кавычки не работают :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
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now