Хотите быстро отправить сообщение всем зарегистрированным пользователям? wall
команда Linux работает быстрее, чем электронная почта, и автоматически нацеливается на зарегистрированных пользователей. Он передает сообщение всем, кто использует терминал в системе.
Командная стена
Если вам нужно быстро доставить сообщение зарегистрированным пользователям вашего компьютера, как вы это сделаете? Электронная почта не удовлетворяет требованиям. Вы не знаете, когда письмо будет прочитано. Если вам нужно, чтобы люди что-то знали прямо сейчас, это не значит, что это нужно. И в любом случае, вы не хотите забивать почтовые ящики вышедших из системы пользователей, которым не нужно видеть сообщение.
Не прилагая дополнительных усилий и не теряя времени, вы не узнаете, кто вошел в систему и откуда. Ваша система может быть расположена в Абердине, штат Вашингтон, но у вас могут быть удаленные пользователи, вошедшие в систему из Абердина, Шотландия . Итак, как вы можете нацелить сообщение специально для вошедших в систему пользователей?
Linux и другие Unix-подобные операционные системы предоставляют вам простой способ сделать это. wall
команда похожа на мощную телеграмму. Он доставит сообщение всем пользователям терминала и сбросит сообщение прямо у них под носом. Пользователи не могут пропустить это, и вы знаете, что они получили это. Вам не нужно, чтобы они решили открыть приложение, чтобы увидеть, есть ли у них сообщение в ожидании.
Доставка тонкая, как пирог с заварным кремом в лицо.
Отправка сообщения
Тестовый компьютер, на котором исследовалась эта статья, был установлен с Fedora Linux , но команда wall
будет работать точно так же в других дистрибутивах.
Единственное отличие, с которым вы можете столкнуться, это то, что некоторые дистрибутивы Linux требуют, чтобы вы использовали sudo
в опции для отправки сообщения из текстового файла, в то время как другие дистрибутивы требуют, чтобы вы всегда использовали sudo
со wall
все время. Это на самом деле разница между дистрибутивами Linux, а не разница с работой самой команды wall
.
Чтобы отправить сообщение всем пользователям, введите wall
, пробел, а затем сообщение, которое вы хотите отправить. В Fedora Linux вы должны использовать sudo
.
sudo wall Основной принтер отключен до дальнейшего уведомления.
Ваше сообщение будет отправлено всем пользователям, у которых открыто окно терминала.
Локальные пользователи RIa и Tom получают сообщение, как и удаленный пользователь Dick, который работает на компьютере под управлением Ubuntu.
Все они получают сообщение одновременно, и вы не задаетесь вопросом, видели ли они это.
Отправка сообщения из файла
Вы можете подготовить свое сообщение в текстовом файле и сохранить его готовым к отправке. Если у вас есть повторяющийся цикл сообщений, которые необходимо отправить, вы можете создать библиотеку предварительно упакованных сообщений, чтобы вам не приходилось вводить их снова и снова.
Сообщение в текстовом файле message.txt
было отображено в окне терминала с командой cat
чтобы убедиться, что это то, что мы хотим отправить.
Затем сообщение отправляется путем передачи имени текстового файла команде wall
в качестве параметра командной строки:
кошка message.txt
sudo wall message.txt
Как и раньше, локальные пользователи Ria и Tom (и все остальные, которые вошли в систему с открытым окном терминала) и удаленный пользователь Dick получают сообщение.
Этикет обмена сообщениями
Поскольку команда wall
отправит сообщение всем пользователям терминала, несмотря ни на что, получение сообщения может быть неприятным. Использование команды wall
должно быть сведено к минимуму и использоваться только там, где есть реальная необходимость. Иначе это быстро станет очень раздражающим.
wall
сообщение будет проставлено поверх всего, что находится на пользовательском терминале. На самом деле он ничего не перезаписывает — он не изменит текст, на который он попал, — но затенит его. И это может настораживать пользователя, который этого не знает.
Представьте, что один из наших локальных пользователей редактирует важный файл в Vi
же, как отправлено wall
сообщение.
Сообщение приходит прямо в середине ее файла.
Все, что нужно нашему пользователю для восстановления правильного вида файла, — это пролистать файл вверх и вниз по нему.
Достаточно просто восстановить дисплей до состояния, в котором работа может продолжаться, а кровяное давление может снизиться, но слишком много прерываний такого рода оставят вас с очень раздраженным набором пользователей.
Так что, как бы удобна ни была wall
, используйте ее в разумных пределах.
А как насчет пользователей графического рабочего стола?
Команда wall
достигает всех, кто вошел в систему с открытым терминалом, но не сможет никого, кто использует графическую среду рабочего стола, без открытого окна терминала.
Если кто-то использует графический рабочий стол и окно терминала открыто, он увидит его в окне терминала, но это все. Не рассчитывайте на wall
чтобы добраться до кого-либо за пределами терминала.
Тонко это не так, но вы не можете отрицать, что оно действительно передает сообщение — в традиционной терминальной среде, то есть.