аналоги write и wall для X-window (iceWM)

Настройка графического интерфейса, Иксов, десктопов, оконных менеджеров и иксовых терминалов

Модератор: Модераторы разделов

Аватара пользователя
anonymous.ru
Сообщения: 614

аналоги write и wall для X-window

Сообщение anonymous.ru »

Как послать сообщение на экран всем пользователям подключившимся по xdmcp?
(То есть на все X-сервера с которых залогинились пользователи)
пока сделал что то типа
DISPLAY=$USR_DYSPLAY xmessage -file filename

в обще и целом работает.
Хотел узнать, есть ли какие-нить штатные варианты?
:drinks:
Спасибо сказали:
Аватара пользователя
anonymous.ru
Сообщения: 614

Re: аналоги write и wall для X-window

Сообщение anonymous.ru »

Хм..
Таки что? В графики нет другого решения послать сообщения на все графические сессии?
(подойдет даже клиент-серверный вариант)
:drinks:
Спасибо сказали:
Аватара пользователя
Portnov
Модератор
Сообщения: 1786
Статус: Матёрый линуксоид
ОС: Debian testing/unstable

Re: аналоги write и wall для X-window

Сообщение Portnov »

Ну можно так. Вот это запускать в каждой сессии иксов:

Код: Выделить всё

MESSAGE=/tmp/message
while true
do inotifywait -e modify $MESSAGE
     xmessage $(cat $MESSAGE)
     rm $MESSAGE
done


А вот так посылать сообщения:

Код: Выделить всё

echo "Hello world" > /tmp/message

Для работы этой красоты нужен inotify в ядре (во всех дистрибутивных афаик включено по дефолту) и пакет inotify-tools. Если это должно работать по сети - очевидно, файл $MESSAGE должен быть расшарен.

Можно еще через dbus, но с ним я никогда не работал, и не знаю даже, есть ли средства работы с ним из скриптов.

Ничего более штатного, чем xmessage, не знаю ;)
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Спасибо сказали: