Загрузить переменные из файла?
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
dlocal
- проходил мимо
Загрузить переменные из файла?
Сабж, как?
Есть файлик со строками вида:
val1=1
val2=ON
val3=true
и т.д.
Реально ли их загрузить в шеллскрипт как переменные?
Есть файлик со строками вида:
val1=1
val2=ON
val3=true
и т.д.
Реально ли их загрузить в шеллскрипт как переменные?
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- mike345
- сержант
- Сообщения: 170
- Зарегистрирован: 2007-12-09 15:57:55
Re: Загрузить переменные из файла?
Я гружу значения из файла конфигурации так:
Но при этом в файле $conf кавычки использовать нельзя.
И в значение попадает все от знака = до конца строки невзирая на использование ;.
Код: Выделить всё
var1=`cat $conf | grep var1=`; var1=${var1##*=}И в значение попадает все от знака = до конца строки невзирая на использование ;.
-
zg
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: Загрузить переменные из файла?
dlocal писал(а):Сабж, как?
Код: Выделить всё
zg# ./1.sh
world
zg# cat 1.sh
#!/bin/sh
. 1.txt
echo $hello
zg# cat 1.txt
hello=world
zg#-
Гость
- проходил мимо
Re: Загрузить переменные из файла?
zg, 1.sh, 1.txt, ни одного лишнего перевода строки и комментария. Специально стараешься, чтобы тя было сложнее понять? ;)
-
zg
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: Загрузить переменные из файла?
гм... а что есть сложности с пониманием трёх строк кода? ну тогда могу ещё ткнуть в манГость писал(а):Специально стараешься, чтобы тя было сложнее понять?
Код: Выделить всё
. file The commands in the specified file are read and executed by the
shell. The return command may be used to return to the . com-
mand's caller. If file contains any `/' characters, it is used
as is. Otherwise, the shell searches the PATH for the file. If
it is not found in the PATH, it is sought in the current working
directory.-
Гость
- проходил мимо
Re: Загрузить переменные из файла?
не, я о source'инге знал и без этой темы. Но, прочитав твой пост, только с третьего раза понял о чем речь. Сначала не заметил где файл и где скрипт, потом не заметил расширения у 1.txt.zg писал(а):а что есть сложности с пониманием трёх строк кода? ну тогда могу ещё ткнуть в ман
-
zg
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: Загрузить переменные из файла?
ну... читать то надо уметьГость писал(а):только с третьего раза понял о чем речь
гм... ну так надо просто быть внимательнейГость писал(а):Сначала не заметил где файл и где скрипт, потом не заметил расширения у 1.txt.
а ты бы как оформил?Гость писал(а):"Форматирование оставляет желать лучшего."
-
Гость
- проходил мимо
Re: Загрузить переменные из файла?
наверное разделил бы на несколько кусков или хотя б добавил несколько лишних переносов строки.zg писал(а):а ты бы как оформил?
Напр.,
foo.sh:
Код: Выделить всё
#! /bin/sh
# load settings from file
. my.conf
# print one of them
echo The value of pi constant is $pi.Код: Выделить всё
pi=3.14Код: Выделить всё
$ ./foo.sh
The value of pi constant is 3.14.-
paix
- лейтенант
- Сообщения: 863
- Зарегистрирован: 2007-09-24 12:41:05
- Откуда: dn.ua
- Контактная информация:
Re: Загрузить переменные из файла?
Борцам за простоту +1 
всем остальным читать Эрика Реймонда (The art of unix programming)
всем остальным читать Эрика Реймонда (The art of unix programming)
With best wishes, Sergej Kandyla
