LINUX.ORG.RU
решено ФорумAdmin

bash: переменная в переменной

 


0

3

Здравствуйте. Ситуация такая. Делаю запрос к mysql в bash скрипте. Результат запроса заношу в переменную ($result). Это строка. Сам скрипт запускается c параметром $1. В строке $result есть ссылка на переменную $1. Теперь более понятно объясню. Запустил я значить скрипт с параметром «делай это». Скрипт при выполнении в результат запроса «что мне делать» должен подставить параметр в строку и выполнить команду состоящую из этой самой строки. Такая вот двойная и странная конструкция. Теперь что не получается. При выполнении команды на основании строки из msql-запроса (то есть я запускаю $result без echo)команда моя воспринимается корректно, но параметр так и остается '$1'. То есть значение не цепляется. То есть мне нужно передать параметр внутрь другой переменной и не получается. p.s. я как всегда за конструктивные предложения и наводки. Спасибо!


Если уж говнокодить, то eval.

anonymous ()

У вас result='Результат работы с параметром $1' чтоли? Тогда только eval, но это не безопасно, надо убедиться, что нет других спецсимволов.

vodz ★★★★★ ()
Ответ на: комментарий от PunkoIvan

Два чая этому господину.

Толку то от ${!var}, эту var ещё надо извлечь из строки, а пока извлекаешь, проверяя на [1-9], то можно и без bash-изма обойтись. :)

vodz ★★★★★ ()
Последнее исправление: vodz (всего исправлений: 1)
10 августа 2017 г.
Ответ на: комментарий от vodz

Читаю сейчас, ох и нагородил я мути. Делаю на python. Все проще и понятнее, без таких громоздких и глупых вещей=)

kerby ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.