Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / переменные в unix / 8 сообщений из 8, страница 1 из 1
23.07.2014, 08:11
    #38703481
sossisson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
переменные в unix
Привет!
есть у меня пара исполняемых файлов в unix-системе. В каждом таком файле есть переменная mon (месяц) которой присваивается номер текущего месяца.
Скажите, как можно автоматизировать данную процедуру, чтобы каждый месяц не менять всю эту кучу файлов? Можно ли вытягивать и подставлять данные из другого файла в нужный ?
...
Рейтинг: 0 / 0
23.07.2014, 09:02
    #38703509
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
переменные в unix
sossissonесть у меня пара исполняемых файлов в unix-системе
Исполняемые файлы какого формата?
...
Рейтинг: 0 / 0
23.07.2014, 09:41
    #38703541
Sleeping Daemon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
переменные в unix
sossissonПривет!
есть у меня пара исполняемых файлов в unix-системе. В каждом таком файле есть переменная mon (месяц) которой присваивается номер текущего месяца.
Скажите, как можно автоматизировать данную процедуру, чтобы каждый месяц не менять всю эту кучу файлов? Можно ли вытягивать и подставлять данные из другого файла в нужный ?
В бщем случае, вместо proga date где дата это ткущий месяц написать
proga $(date +%m)
А вообще, man date.
...
Рейтинг: 0 / 0
23.07.2014, 10:16
    #38703584
sossisson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
переменные в unix
Sleeping Daemon,
исполняемый файл - это файл с правами на выполнение, в котором пара команд для работы с файлами.
что-то типа такого

#!/usr/bin/ksh
for fname in `find BEW -type f -name '*.ora'`
do
******
#echo $fname
done


Можно ли в одном файле написать mon=09, а из другого вытягивать это значение?
...
Рейтинг: 0 / 0
23.07.2014, 10:28
    #38703602
Sleeping Daemon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
переменные в unix
sossissonSleeping Daemon,
исполняемый файл - это файл с правами на выполнение, в котором пара команд для работы с файлами.
что-то типа такого

#!/usr/bin/ksh
for fname in `find BEW -type f -name '*.ora'`
do
******
#echo $fname
done


Можно ли в одном файле написать mon=09, а из другого вытягивать это значение?
Да, через export mon, или даже так: export mon=09
...
Рейтинг: 0 / 0
23.07.2014, 10:32
    #38703610
sossisson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
переменные в unix
Sleeping Daemon,
тогда mon должна быть объявлена как переменная среды?
...
Рейтинг: 0 / 0
23.07.2014, 11:48
    #38703716
Sleeping Daemon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
переменные в unix
sossissonSleeping Daemon,
тогда mon должна быть объявлена как переменная среды?
Если "Можно ли в одном файле написать mon=09, а из другого вытягивать это значение?" файл о котором идёт речь исполняемый, то export mon=xxx.
Если это просто текстовой файл - то в исполняемом прочитать это значение. Если нужно месяц автоматически - то я уже писал.
...
Рейтинг: 0 / 0
23.07.2014, 11:56
    #38703723
переменные в unix
Приветствую.
Судя по примеру, вы используете ksh.

Переменные в shell не надо объявлять. При первом использовании, переменная пустая.

Переменная, которая не была экспортирована, недоступна вне данного процесса.
Значение переменной, для которой был сделан export, доступно порожденным процессам.
Родительский процесс ничего не узнает об изменениях данной переменной.

В общем случае, когда несколько скриптов требуют единой настройки, делается отдельный файл конфигурации
например my.conf
В нем пишем:
mon=09

В каждом из скриптов пишем:
. ./my.conf

(На Ваш выбор - указать полный путь, относительный или через переменные)

Удача.
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / переменные в unix / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]