Здравствуйте уважаемые участники форума !
Не писал на форумах очень долго, поэтому что то может быть не так
В общем к делу!
Долго искал информацию по поводу автоматического отключения компьютера, после завершения воспроизведения,но увы все готовые способы абсолютно не подходили. Пришлось забросить лень и разобраться.
Была тема
https://forum.ubuntu.ru/index.php?topic=96120.0 ,но она по всей видимости закрыта, поэтому создаю новую.
Информация предоставленная ниже справедлива для операционной системы Ubuntu 12.10 (очевидно и для многих других) с установленным плеером VLC и файловым менеджером Nautilus.Желаемое достигается очень просто, методом добавления скрипта Nautilus (название файла произвольное, например "Отключение после просмотра") в соответствующую папку
~/.gnome2/nautilus-scripts/ со следующим содержимым.
#!/bin/bash
#Запуск медиапрлеера VLC c параметрами : выход после окончания плейлиста и списком файлов плей листа
#выбранных в контекстном меню для файлов Nautilus
vlc --play-and-exit $NAUTILUS_SCRIPT_SELECTED_URIS
#Выключение компьютера после завершения процесса VLC с использованием dbus (не требует прав root)
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
Таким образом в контекстном меню, в подменю "Сценарии" появится пункт "Отключение после просмотра".
Если выбрать файл(несколько файлов) с помощью этого пункта, то они будут проиграны медиаплеером VLC и после его закрытия компьютер моментально отключится без запроса подтверждения.
Для того что бы добавить возможность отмены этой операции необходимо установить пакет zenity (набор для создания графических интерфейсов)
sudo apt-get install zenity
После этого редактировать (или создать) файл ~/.gnome2/nautilus-scripts/"Отключение после просмотра"
со следующим содержимым :
#!/bin/bash
#Сценарий Nautilus: Завершение работы компьютера после воспроизведения.
#
# VAR
#--------
COUNT=10
#--------
# BEGIN
#
vlc --play-and-exit $NAUTILUS_SCRIPT_SELECTED_URIS
(
while [ $COUNT? != 110 ]
do
echo $COUNT
COUNT=`expr $COUNT + 5`
sleep 1
done
) |
zenity --auto-close --progress --title "Завершение работы после просмотра" --text "Воспроизведение окончено.Питание будет отключено..."
if [ $? = 0 ];
then
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
fi
#
# END
В этом случае после окончания плей-листа(выхода из VLC) на экран будет выведено предупреджение с возможностью отмены или подтверждения. По истечении 20 секунд компьютер будет выключен автоматически.
Все операции можно выполнить с помощью скрипта -установщика, который находится во вложении.
PS. Всех с наступающим Новым 2013 годом !