Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: [РЕШЕНО] создание конфигурационного файла для sh сценария  (Прочитано 1855 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн gurza_linux

  • Автор темы
  • Любитель
  • *
  • Сообщений: 75
  • гюрза
    • Просмотр профиля
потихоньку автоматизирую рутинную работу в домашней сетке, на данный момент моих знаний хватает. но хочу попробовать вот что. у меня все мои переменные, пути, адреса я указываю в самом начале сценария, мне так проще.
как сделать конфигурационный файл, например, options.ini содержащий записи
serverip="192.168.1.3";
laptopip="192.168.1.2";
filmpath="/media/orion/films/"
а самое главное, как заставить скрипт, загрузить из этого файлика все переменные? то есть вмолотить туда все переменные, а потом при написании новых сценариев просто ссылаться на него.
« Последнее редактирование: 16 Июля 2011, 00:38:03 от RazrFalcon »
macbook pro
win7\ubuntu 12.10\mac os x 10.8.X
intel core i7, hdd 750 gb, ram 16 gb, video 1 gb

Оффлайн RazrFalcon

  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
$ newVar="`grep serverip ~/vars | sed 's/serverip="\|";//g'`"
$ echo "$newVar"
192.168.1.3
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
как заставить скрипт, загрузить из этого файлика все переменные?
Код: (bash) [Выделить]
source "$(dirname $0)/options.ini"

Оффлайн gurza_linux

  • Автор темы
  • Любитель
  • *
  • Сообщений: 75
  • гюрза
    • Просмотр профиля
$ newVar="`grep serverip ~/vars | sed 's/serverip="|";//g'`"
$ echo "$newVar"
192.168.1.3
в этом случае переменная будет доступна вообще для всей системы? правильно понял?

Пользователь решил продолжить мысль 12 Июля 2011, 15:37:18:
как заставить скрипт, загрузить из этого файлика все переменные?
Код: (bash) [Выделить]
source "$(dirname $0)/options.ini"

этот вариант мне подходит, инишник должен лежать там же где и скрипт, попробовал все работает.
большое спасибо
« Последнее редактирование: 12 Июля 2011, 15:37:18 от gurza_linux »
macbook pro
win7\ubuntu 12.10\mac os x 10.8.X
intel core i7, hdd 750 gb, ram 16 gb, video 1 gb

Оффлайн RazrFalcon

  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
>>в этом случае переменная будет доступна вообще для всей системы? правильно понял?
просто парсится файл с переменными, первое что пришло в голову

arcfi, команда source просто вставляет в наш код код файла который мы указали, да?
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
arcfi, команда source просто вставляет в наш код код файла который мы указали, да?

Ага, типа того:
man bash
...
source filename [arguments]
              Read  and  execute  commands from filename in the current shell environment and return the exit status of the last command executed
              from filename.
...

 

Страница сгенерирована за 0.017 секунд. Запросов: 21.