Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Вопрос по сценариям!!

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Unix
Предыдущая тема :: Следующая тема  
Автор Сообщение
pegas
Гость





СообщениеДобавлено: Пн Янв 12 2004 09:15    Заголовок сообщения: Вопрос по сценариям!! Ответить с цитатой

Подскажите как , где и что прописать что бы файлы
ip-up.local и ip-down.local стартовали при работе только с конкретными
модемами:
например у меня 2 мультипортовых платы и 16 модемов
от options.ttyS16...options.ttyS32 и нужно что бы скрипты в этих файлах срабатовали при сбросе и инициализации только модемов
например options.ttyS16 и options.ttyS27
Вернуться к началу
and3008



Зарегистрирован: 12.10.2001
Сообщения: 14893
Откуда: Н.Новгород

СообщениеДобавлено: Пн Янв 12 2004 10:41    Заголовок сообщения: Ответить с цитатой

Файлы up-up.local являются файлами-сценариями.

Ну так и пиши там типа такого:
if [ $PPPDEV -q "/dev/ttyS0" ]

тра-ля-ля.

fi;

Описание переменных найдешь в самом конце man pppd

Примеры анализа на if поглядишь в любом из стартовых скриптов системы.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
pegas
Гость





СообщениеДобавлено: Вт Янв 13 2004 10:39    Заголовок сообщения: Ответить с цитатой

and3008 писал(а):
Файлы up-up.local являются файлами-сценариями.

Ну так и пиши там типа такого:
if [ $PPPDEV -q "/dev/ttyS0" ]

тра-ля-ля.

fi;

Описание переменных найдешь в самом конце man pppd

Примеры анализа на if поглядишь в любом из стартовых скриптов системы.

FПодскажите а где я могу найти информацию о том как писать скрипты?
Вернуться к началу
and3008



Зарегистрирован: 12.10.2001
Сообщения: 14893
Откуда: Н.Новгород

СообщениеДобавлено: Вт Янв 13 2004 11:53    Заголовок сообщения: Ответить с цитатой

Поищи русскую версию BASH Howto

Да там просто все, как три копейки. Если знаешь какой-нибудь язык программирования, то проблемм не будет.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
test13



Зарегистрирован: 09.01.2004
Сообщения: 43

СообщениеДобавлено: Вт Янв 13 2004 13:58    Заголовок сообщения: Ответить с цитатой

если знаешь с++ - цены тебе нет (:
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
and3008



Зарегистрирован: 12.10.2001
Сообщения: 14893
Откуда: Н.Новгород

СообщениеДобавлено: Вт Янв 13 2004 14:04    Заголовок сообщения: Ответить с цитатой

Если знаешь только С - цена падает.

Примерно в два раза. Laughing
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
test13



Зарегистрирован: 09.01.2004
Сообщения: 43

СообщениеДобавлено: Вт Янв 13 2004 14:06    Заголовок сообщения: Ответить с цитатой

((:
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
and3008



Зарегистрирован: 12.10.2001
Сообщения: 14893
Откуда: Н.Новгород

СообщениеДобавлено: Вт Янв 13 2004 14:26    Заголовок сообщения: Ответить с цитатой

Вот пример.
Особого интелекта не надо.

#!/bin/bash

if [ $DEVICE = "/dev/tyS16" ]; then
/bin/echo "Das ist Fantastish!!!!" >> /var/log/ppp-log
fi

if [ $PEERNAME = "vasia" ]; then
/bin/echo "O-o-o-o! Vasia is go to here!!!" >> /var/log/ppp-log
fi

exit 0

Назначение переменных $DEVICE $PEERNAME читать в man pppd
Акурат предпоследний раздел.

Внимание! Этот скрипт ничего не знает про переменную PATH, поэтому я использовал полные пути к программе echo

Если хочется жить как люди, то второй строчкой строчкой скрипта должно быть типа PATH=$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/добавить_по_вкусу/local/мои_любимые_проги
export PATH

Загляните в .bash_profile - поймете.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
test13



Зарегистрирован: 09.01.2004
Сообщения: 43

СообщениеДобавлено: Вт Янв 13 2004 14:32    Заголовок сообщения: Ответить с цитатой

А если я использую zsh? (:
Хотя принцип я думаю будет понятен всем - у каждой оболочки есть файл в которой она хранит переменные.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
and3008



Зарегистрирован: 12.10.2001
Сообщения: 14893
Откуда: Н.Новгород

СообщениеДобавлено: Ср Янв 14 2004 00:40    Заголовок сообщения: Ответить с цитатой

Доки. Читайте доки - они рулёз!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
test13



Зарегистрирован: 09.01.2004
Сообщения: 43

СообщениеДобавлено: Ср Янв 14 2004 03:59    Заголовок сообщения: Ответить с цитатой

man, man, man - как завещал нам Великий Ленин.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Dmitry.Karpov



Зарегистрирован: 30.11.2003
Сообщения: 415
Откуда: Moscow

СообщениеДобавлено: Пт Янв 16 2004 18:10    Заголовок сообщения: Ответить с цитатой

test13 писал(а):
А если я использую zsh? (:
Хотя принцип я думаю будет понятен всем - у каждой оболочки есть файл в которой она хранит переменные.

Переменные храняться не в файле, а в оперативной памяти (доказательство: в системе м.б. запущены несколько экземпляров шелла). Они могут браться из файла при старте.
_________________
Благословен Бог, сотворивший меня сисадмином!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
pegas
Гость





СообщениеДобавлено: Сб Янв 17 2004 09:19    Заголовок сообщения: Ответить с цитатой

Подскажите, а в этом условии каким значком добавить оператор ИЛИ
так сработает условие или нет?
if [ $DEVICE = "....." ] or [$DEVICE = "....." ]; then
/bin/echo "hello!!!!"
fi
Вернуться к началу
Dmitry.Karpov



Зарегистрирован: 30.11.2003
Сообщения: 415
Откуда: Moscow

СообщениеДобавлено: Сб Янв 17 2004 15:31    Заголовок сообщения: Ответить с цитатой

pegas писал(а):
Подскажите, а в этом условии каким значком добавить оператор ИЛИ
так сработает условие или нет?
if [ $DEVICE = "....." ] or [$DEVICE = "....." ]; then
/bin/echo "hello!!!!"
fi

Нет, так не сработает. Открывающая квадратная скобка - это имя файла с программой, /bin/[ - вот и читай 'man ['. Скорее, надо писАть тпа так:
if [ "$DEVICE" = "....." or "$DEVICE" = "....." ]; then
/bin/echo "hello!!!!"
fi
_________________
Благословен Бог, сотворивший меня сисадмином!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
and3008



Зарегистрирован: 12.10.2001
Сообщения: 14893
Откуда: Н.Новгород

СообщениеДобавлено: Сб Янв 17 2004 21:00    Заголовок сообщения: Ответить с цитатой

Загляни в /etc/rc.d/init.d/rc.sysinit

Там куча всякого. Разберешься.
Главное ничего там не меняй, только гляди!!!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
pegas
Гость





СообщениеДобавлено: Пн Янв 19 2004 10:33    Заголовок сообщения: Ответить с цитатой

Спасибо! Я разобрался!!
вот при таком условии скрипт срабатывает

#! /bin/sh

if [ $DEVICE = ("....." or ".....") ]; then
echo "hello!!!!"
fi
exit 0
Вернуться к началу
and3008



Зарегистрирован: 12.10.2001
Сообщения: 14893
Откуда: Н.Новгород

СообщениеДобавлено: Пн Янв 19 2004 10:42    Заголовок сообщения: Ответить с цитатой

Я бы сделал через select и case

Пример в любом файле из каталога /etc/rc.d/init.d
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Mranton
Гость





СообщениеДобавлено: Пн Янв 19 2004 10:53    Заголовок сообщения: книга по bash программированию Ответить с цитатой

http://gazette.linux.ru.net/rus/articles/index-abs-guide.html

- рекомедации лучших собаководов.
Вернуться к началу
Dmitry.Karpov



Зарегистрирован: 30.11.2003
Сообщения: 415
Откуда: Moscow

СообщениеДобавлено: Пн Янв 19 2004 13:37    Заголовок сообщения: Ответить с цитатой

and3008 писал(а):
Я бы сделал через select и case
Кстати, 'if [' вызывает запуско отдельного процесса, а case выполняется внутри shell.
_________________
Благословен Бог, сотворивший меня сисадмином!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Unix Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...