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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: [РЕШЕНО]Звуковое оповещение при подключении съемных устройств  (Прочитано 925 раз)

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

Оффлайн brenti

  • Автор темы
  • Активист
  • *
  • Сообщений: 485
    • Просмотр профиля
Есть некая задача, заставить систему пиликать при подключении/отключении внешних устройств. Прог судя по всему нету для этого, во всяком случае я не нашел. Помогите написать скрипт который бы играл звук при монтировании и отмонтирования хотя бы флешек. :idiot2:
« Последнее редактирование: 20 Март 2013, 15:07:29 от yorik1984 »

Оффлайн VitalD

  • Активист
  • *
  • Сообщений: 509
    • Просмотр профиля
brenti,
Вот набросал кое-что (исключительно для дисковых устройств sd*)
Код: (bash) [Выделить]
#!/bin/bash
c=$(ls /dev/sd* | grep sd[abcdfghijklmnopqrstuvwxyz] -c)
for ((;;))
do
a=$(ls /dev/sd* | grep sd[cdfghijklmnopqrstuvwxyz] -c)
if [[($a < $c)]]; then
echo "Отключено устройство!"
fi
if [[($a > $c)]]; then
echo "Подключено устройство!"
fi
if [[($a -ne $c)]]; then
c=$(ls /dev/sd* | grep sd[cdfghijklmnopqrstuvwxyz] -c)
fi
sleep 1
done
Дальше сами доделаете?  :)
« Последнее редактирование: 20 Март 2013, 15:07:41 от yorik1984 »

Оффлайн brenti

  • Автор темы
  • Активист
  • *
  • Сообщений: 485
    • Просмотр профиля
brenti,
Вот набросал кое-что (исключительно для дисковых устройств sd*)
#!/bin/bash
c=$(ls /dev/sd* | grep sd[abcdfghijklmnopqrstuvwxyz] -c)
for ((;;))
do
a=$(ls /dev/sd* | grep sd[cdfghijklmnopqrstuvwxyz] -c)
if [[($a < $c)]]; then
echo "Отключено устройство!"
fi
if [[($a > $c)]]; then
echo "Подключено устройство!"
fi
if [[($a -ne $c)]]; then
c=$(ls /dev/sd* | grep sd[cdfghijklmnopqrstuvwxyz] -c)
fi
sleep 1
done
Дальше сами доделаете?  :)

Спасибо! вот, что получилось. Удалил букву "a" так как sda у меня нтфс раздел автомонтирован, чтобы не пиликала при каждом включении. Всё работает ;)
##!/bin/bash
c=$(ls /dev/sd* | grep sd[bcdfghijklmnopqrstuvwxyz] -c)
for ((;;))
do
a=$(ls /dev/sd* | grep sd[bcdfghijklmnopqrstuvwxyz] -c)
if [[($a < $c)]]; then
/usr/bin/canberra-gtk-play --id="Hardware Disconnected" --description="off"
fi
if [[($a > $c)]]; then
/usr/bin/canberra-gtk-play --id="Hardware Connected" --description="on"
fi
if [[($a -ne $c)]]; then
c=$(ls /dev/sd* | grep sd[bcdfghijklmnopqrstuvwxyz] -c)
fi
sleep 1
done

« Последнее редактирование: 12 Март 2013, 14:05:08 от brenti »

 

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