Здравствуйте!
Есть тестовый скрипт:
#!/bin/bashvar1=111
var2=222
var3=333Необходимо получить массив переменных заданных (или объявленных, как правильно?) в скрипте. Т.е. получить следующий массив:
manualvar[0]=var1
manualvar[1]=var2
manualvar[2]=var3При использовании declare выводятся не только переменные, заданные пользователем, но и системные переменные окружения.
Попробовал в начале скрипта получить список переменных окружения и уничтожить их с помощью unset, но некоторые переменные не уничтожаются, т.к. являются read-only.Каким образом можно получить список переменных, заданных в скрипте, исключая системные переменные?
> Каким образом можно получить список переменных, заданных в скрипте,http://stackoverflow.com/questions/1305237/how-to-list-varia...
> исключая системные переменные?
Вот взят и всё испортил.
> http://stackoverflow.com/questions/1305237/how-to-list-varia...Спасибо большое - ссылка дельная, нашёл в ней решение своего вопроса.
>> исключая системные переменные?
> Вот взят и всё испортил.Вы, наверное, хотели увидеть тут словосочетание "переменные окружения"?
>>> исключая системные переменные?
>> Вот взят и всё испортил.
> Вы, наверное, хотели увидеть тут словосочетание "переменные окружения"?Нет, я нашёл "полное" решение, но потом увидел условие про внутренние переменные bash и решил, что это усложняет дело.
>>>> исключая системные переменные?
>>> Вот взят и всё испортил.
>> Вы, наверное, хотели увидеть тут словосочетание "переменные окружения"?
> Нет, я нашёл "полное" решение, но потом увидел условие про внутренние переменные
> bash и решил, что это усложняет дело.А где manualvar[3]=manualvar ? :)
массив тоже переменная.