borin 0 Опубликовано: 2008-06-07 07:12:26 Share Опубликовано: 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 Ссылка на сообщение Поделиться на других сайтах
Neelix 33 Опубліковано: 2008-06-07 07:36:22 Share Опубліковано: 2008-06-07 07:36:22 Select * From users, не? Ссылка на сообщение Поделиться на других сайтах
borin 0 Опубліковано: 2008-06-07 07:42:36 Автор Share Опубліковано: 2008-06-07 07:42:36 Select * From users, не? не SELECT login FROM users, выбираем все логины из базы, и их надо подставлять в первый скрипт, только вот выдераются из мускуля строкой и как их разделить я не знаю. Ссылка на сообщение Поделиться на других сайтах
nallien 3 Опубліковано: 2008-06-07 09:56:04 Share Опубліковано: 2008-06-07 09:56:04 а к слову интересно кто вообще делал какие-либо скрипты для добавления трафика все пользователям может поделитесь ? а по сабжу - увы не подскажу как, но если тебе выборка идет строкой, то есть же разделяющий символ - значит имеем массив... со всеми вытекающими. Ссылка на сообщение Поделиться на других сайтах
grayich 0 Опубліковано: 2008-06-07 10:00:54 Share Опубліковано: 2008-06-07 10:00:54 perl Ссылка на сообщение Поделиться на других сайтах
borin 0 Опубліковано: 2008-06-07 10:04:24 Автор Share Опубліковано: 2008-06-07 10:04:24 слово perl я тоже знаю но не умею на нем кодить, вот и прошу конкретно, подсказать как соеденить, не плохо бы если б это было на bash Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-06-07 14:52:01 Share Опубліковано: 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 Ссылка на сообщение Поделиться на других сайтах
borin 0 Опубліковано: 2008-06-08 05:01:47 Автор Share Опубліковано: 2008-06-08 05:01:47 madf, спасибо за алгоритм, единственно при передаче этого значения консольному конфигуратору вылазит ошибка, а если просто так login вбить то все проходит на ура, думаю где то тут трабла с кодировками, буду копать дальше. Ссылка на сообщение Поделиться на других сайтах
borin 0 Опубліковано: 2008-06-08 14:31:05 Автор Share Опубліковано: 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 Скрипт продублировал в шапке может кому понадобится, всем спс за помощь. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас