Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Помогите написать простой скрипт (bash) / 20 сообщений из 20, страница 1 из 1
17.05.2005, 14:19:44
    #33069562
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
Хочю написать скрипт flash.sh.
Типа говорю flash.sh -m (монтируется флешка), говорю flash.sh -u (флешка отваливается). Как монтировать я знаю, а вот как параметры считывать и синтаксис условий не знаю.
...
Рейтинг: 0 / 0
17.05.2005, 14:32:44
    #33069604
g613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
wessenХочю написать скрипт flash.sh.
Типа говорю flash.sh -m (монтируется флешка), говорю flash.sh -u (флешка отваливается). Как монтировать я знаю, а вот как параметры считывать и синтаксис условий не знаю.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
#!/bin/bash
if [ "$1" = "-m" ]; then
  echo mount
elif [ "$1" = "-u" ]; then
  echo umount 
else
  echo "Missing arg"
fi

Дистрибутив у тебя какой ? в смысле не изобретаеш ли ты велосипед...
...
Рейтинг: 0 / 0
17.05.2005, 14:35:03
    #33069611
serg_tmb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
автор
В командный файл могут быть переданы параметры. В shell
используются позиционные параметры (т.е. существенна очередность
их следования). В командном файле соответствующие параметрам
переменные (аналогично shell-переменным) начинаются с символа
"$", а далее следует одна из цифр от 0 до 9:

Пусть расчет "examp-1" вызывается с параметрами "cock" и
"tail". Эти параметры попадают в новую среду под стандартными
именами "1" и "2". В (стандартной) переменной с именем "0" будет
храниться имя вызванного расчета.
При обращении к параметрам перед цифрой ставится символ
доллара "$" (как и при обращении к переменным):
$0 - соответствует имени данного командного файла;
$1 - первый по порядку параметр;
$2 - второй параметр и т.д.

Сам интерпретатор shell автоматически присваивает значения
следующим переменным (параметрам):
? - значение, возвращенное последней командой;
$ - номер процесса;
! - номер фонового процесса;
# - число позиционных параметров, передаваемых в shell;
* - перечень параметров, как одна строка;
@ - перечень параметров, как совокупность слов;
- - флаги, передаваемые в shell.
При обращении к этим переменным (т.е при использовании их в
командном файле - shell-программе) следует впереди ставить "$".
...
Рейтинг: 0 / 0
17.05.2005, 14:46:59
    #33069645
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
g613 wessenХочю написать скрипт flash.sh.
Типа говорю flash.sh -m (монтируется флешка), говорю flash.sh -u (флешка отваливается). Как монтировать я знаю, а вот как параметры считывать и синтаксис условий не знаю.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
#!/bin/bash
if [ "$1" = "-m" ]; then
  echo mount
elif [ "$1" = "-u" ]; then
  echo umount 
else
  echo "Missing arg"
fi

Дистрибутив у тебя какой ? в смысле не изобретаеш ли ты велосипед...
fedore core 2
...
Рейтинг: 0 / 0
17.05.2005, 14:51:07
    #33069657
g613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
не сочти за посылание на три буквы, но попробуй набрать man hotplug, я сильно подозркваю что в федоре оно есть и даже работает, это я к тому чтоб велик не изобретать со скриптом монтирования/детектирования_того_чего_монтировать и пр...
...
Рейтинг: 0 / 0
17.05.2005, 14:56:12
    #33069673
serg_tmb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
g613 wessenХочю написать скрипт flash.sh.
Типа говорю flash.sh -m (монтируется флешка), говорю flash.sh -u (флешка отваливается). Как монтировать я знаю, а вот как параметры считывать и синтаксис условий не знаю.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
#!/bin/bash
if [ "$1" = "-m" ]; then
  echo mount
elif [ "$1" = "-u" ]; then
  echo umount 
else
  echo "Missing arg"
fi

Дистрибутив у тебя какой ? в смысле не изобретаеш ли ты велосипед...

Или так

#!/bin/sh
case $* in
-m) mount ;;
-u) umount;;
*) echo finish;;
esac
...
Рейтинг: 0 / 0
17.05.2005, 15:58:58
    #33069932
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
g613не сочти за посылание на три буквы, но попробуй набрать man hotplug, я сильно подозркваю что в федоре оно есть и даже работает, это я к тому чтоб велик не изобретать со скриптом монтирования/детектирования_того_чего_монтировать и пр...

есть такая штука, прочитал man(он там на редкость короткий), понял, для чего это, как настраивать там не написано, посмотрел файл /где_то_там/default.hotplug - аптимизма не прибавилось, залез на сайт этого хотплугина, очент много букв, времени читать и разбираться нету :( Буду через свой файлик справлятся.
...
Рейтинг: 0 / 0
17.05.2005, 16:18:30
    #33070010
g613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
wessen g613не сочти за посылание на три буквы, но попробуй набрать man hotplug, я сильно подозркваю что в федоре оно есть и даже работает, это я к тому чтоб велик не изобретать со скриптом монтирования/детектирования_того_чего_монтировать и пр...

есть такая штука, прочитал man(он там на редкость короткий), понял, для чего это, как настраивать там не написано, посмотрел файл /где_то_там/default.hotplug - аптимизма не прибавилось, залез на сайт этого хотплугина, очент много букв, времени читать и разбираться нету :( Буду через свой файлик справлятся.

ключевая фраза там вроде как - даже работает

У тебя hotplug стартует при запуске системы ?
после того как флешку воткнеш ни чего не происходит ?
...
Рейтинг: 0 / 0
17.05.2005, 16:30:15
    #33070051
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
g613
У тебя hotplug стартует при запуске системы ?

в ~/.bashrc не прописано, больше не знаю где смотреть.

g613
после того как флешку воткнеш ни чего не происходит ?
Что именно должно происходить? Вставил я флешку и как узнать, произошло что нить или нет?
Когда руками монтирую, иду в каталог который указывал в mount и там вижу данные на флешке.
...
Рейтинг: 0 / 0
17.05.2005, 17:31:04
    #33070298
nik2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
SuSe 9.0

/etc/rc.d/hotpluger start

втыкаем флешку

> cat /etc/fstab | grep HOTPLUG
/dev/sda1 /media/sda1 auto sync,noauto,user,exec 0 0 #HOTPLUG B3Fu.or9KBB88e95
/dev/sda2 /media/sda2 auto sync,noauto,user,exec 0 0 #HOTPLUG B3Fu.or9KBB88e95

mount /media/sda1
....
umount /media/sda1

вынимаем флешку

> cat /etc/fstab | grep HOTPLUG
<ПУСТО>


если желаеш продолжать изобретение велосипеда, то подумай сразу о наличии у тебя, ну например второй флешки которая например не vfat....
...
Рейтинг: 0 / 0
17.05.2005, 18:20:35
    #33070454
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
2 nik2
По твоему примеру, не совсем понимаю смысл hotplugin. Я думал так: настраиваешь какой нибудь конфигурационный файл, указываешь помимо др. параметров, место, куда монтирвать, затем вставляешь флешку и она сама монтируется, т.е. не надо писать mount and umount. Как в винде вобщем. Я не прав?
...
Рейтинг: 0 / 0
17.05.2005, 20:05:25
    #33070676
nik2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
wessen2 nik2
По твоему примеру, не совсем понимаю смысл hotplugin. Я думал так: настраиваешь какой нибудь конфигурационный файл, указываешь помимо др. параметров, место, куда монтирвать, затем вставляешь флешку и она сама монтируется, т.е. не надо писать mount and umount. Как в винде вобщем. Я не прав?

в данном случае он занимается тем что:
- отлавливает момент когда ты воткнул флешку
- подгружает соответствующий ядерный модуль ( storage ) основываясь на данный полученных от ядра, и сверяя их со своими таблицами ( тип устройства производитель и тд )
- записывает в fstab точку монтирования
- после удаления флешки чистит fstab, выгружает модуль и тд ( см настройки )

Если ты обратиш внимание на опции то увидиш sync, тоесть флешку _ТЕОРЕТИЧЕСКИ_ можно вытащить не отмонтировав


По поводу воткнул и работай этотебе если правильно ошибаюсь надо смотреть в сторону subfs

Как вариант в ext[23] есть такое понятие как метка фс и можно руками вбить в fstab запись в котором вместоимени девайса будет LABEL, таким способом ты решиш проблемму `плавающих` девайсов. Как уже говорили ни кто не обещал тебе что девайс который ты воткнул всегда будет называться sda1....


Тоесть если ты еще не передумал писать скрипт то озадачся:
- проблеммой загрузки нужного модуля при его отсутствии
- проверки имени девайса
- проблемму кеширования данных при работе со съемным девайсом ( если хочеш на ходу ее дергать )
....

уфф... и теперь после всего вышесказанного не кажется ли тебе более проще таки написать mount
...
Рейтинг: 0 / 0
18.05.2005, 11:34:57
    #33071535
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
Вобщем скрипта, автор которого g613, мне вполне хватает.
Всем спасибо.
...
Рейтинг: 0 / 0
18.05.2005, 11:41:25
    #33071561
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
а жаль. В конечном итоге вы бы написали какой-нибудь навороченный Flash Automount :-)
...
Рейтинг: 0 / 0
18.05.2005, 12:43:52
    #33071762
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
Ну вот и как вобще, после всего вышеописанного, можно говорить, что Линух, конкурент Виндозе на рабочем столе? Если даже мне, программисту, допустим интересно копаться в настройках Линуха, на за неимением времени, я немогу достаточно глубого все изучить, чтобы чувствовать себя комфортно. А теперь представьте себе миллионы и миллионы домохозяек, с ошеломляющим уровнем интеллекта. Какую ОС они выбирут?
...
Рейтинг: 0 / 0
18.05.2005, 13:06:31
    #33071853
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
У них интеллект не меньше нашего. Вопрос в использовании оного.
И в желании разбираться. Никто не хочет разбираться - все хотят включить - и всё.

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
18.05.2005, 13:16:03
    #33071898
g613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
...поэтому домохозяйкам абсолютно фиолетово что там win или linux, им вообще хватилоб коробки которая умела играть музыку, показывать кино, ну и возможно ходить в интернет... А, да - хранить свои домохозяйские рецепты...

Со всем вышеперечисленным `последние модели` линуксов справляются `из коробки`. Если надо что то большее то это уже ни фига не домохозяйки у которых есть админ который настраивает все остальное...

2 wessen

А что собственно в вышеизложенном тебя так напугало ???
...
Рейтинг: 0 / 0
18.05.2005, 13:29:46
    #33071946
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
g613А что собственно в вышеизложенном тебя так напугало ???
Ничего не напугало, просто гемороя много :)
...
Рейтинг: 0 / 0
18.05.2005, 13:37:31
    #33071979
g613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
wessen g613А что собственно в вышеизложенном тебя так напугало ???
Ничего не напугало, просто гемороя много :)

да нет тут ни какого гемороя

просто тебе подробно расписали над чем надо задуматься при разработке своего средства автоматического монтирования флешек, если не хочется пользоваться существующими

Вот чтото мне подсказывает что еслиб ты занялся этим под виндой ( в смысле оторвал бы ее монтировщих флешек и начал писать свой ) гемороя былоб не меньше :))
...
Рейтинг: 0 / 0
18.05.2005, 13:43:17
    #33072001
serg_tmb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите написать простой скрипт (bash)
g613Вот чтото мне подсказывает что еслиб ты занялся этим под виндой ( в смысле оторвал бы ее монтировщих флешек и начал писать свой ) гемороя былоб не меньше :))

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


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