Код: Выделить всё
dialog --stdout --no-tags --clear --backtitle "Name Picker" --title " Name Selection " --radiolist " Select the name " 12 95 0 "Adam Zero" "Adam Zero" off "John Smith" "John Smith" off > file
< /code>
Что мне нужно, однако, для того, чтобы имена вышли из базы данных MariaDB или MySQL. SO: < /p>
create table names (fullname varchar(128));
insert into names values ('John Smith');
insert into names values ('Adam Zero');
IFS=$'\n'; unset NAMELIST
results=( $(/usr/bin/mariadb -N -B -u myuser -h 10.0.0.25 -pmypass -P 3306 -D mydb --skip-ssl -e "select distinct fullname from names order by fullname" ) )
for i in ${results[*]}; do
NAMELIST=$(echo $NAMELIST "\"$i\" \"$i\" off")
done
echo "$NAMELIST"
Код: Выделить всё
"Adam Zero" "Adam Zero" off "John Smith" "John Smith" off
dialog --stdout --no-tags --clear --backtitle "Name Picker" --title " Name Selection " --radiolist " Select the name " 12 95 0 $NAMELIST > file
< /code>
... и получить этот результат: < /p>
Expected at least 20 tokens for --radi, have 5.
Use --help to list options.
< /code>
Такая же ошибка возвращает, использую ли я $ namelist или «$ namelist» (т.е. с кавычками или без кавычек) < /p>
Первый вопрос: почему может Я только что заменил в команду диалога переменной, текстовое содержимое которого точно так же, как текст, который, указанный как статический текст, работает? < /p>
Более важный вопрос: как я могу переписать Этот код BASH, чтобы позволить результатам одноконтактного запроса от MariaDB или MySQL, чтобы быть успешным источником диалогового окна диалогового радиолистического? Файл, но не из базы данных ... и я не смог соответствующим образом адаптировать свой код, чтобы получить полезный результат. Любое понимание ценится.
Подробнее здесь: https://stackoverflow.com/questions/794 ... iadb-query
Мобильная версия