Отправка сообщения через терминал другому пользователю BASH
Есть ли у вас предложения написать script, который определяет, зарегистрирован ли пользователь, указанный в первом параметре script?
Если вы вошли в систему, предложите ему возможность написать сообщение пользователю. Впоследствии, поскольку отправленное сообщение будет предоставлено возможность написать другой отчет или завершить работу script.
В случае, если пользователь не вошел в систему, и сообщение "" неизвестно...
Спасибо.
Ответы
Ответ 1
'write' является одним из решений. Выполнить команду кто
who
вывод будет чем-то вроде
nand pts/1 2013-11-20 11:59 (:0)
nand pts/7 2013-11-20 13:09 (:0)
Теперь вы можете отправить сообщение пользователю "nand" на pts/1, используя запись как
write nand pts/1
Нажмите кнопку ввода после записи этой команды, затем введите любое сообщение, которое вы хотите отправить,
другой пользователь увидит вывод как
Message from [email protected] on pts/19 at 14:54 ...
hi
hi
hello
Ответ 2
Попробуйте использовать следующие команды:
who
mesg
talk
Ответ 3
В Linux все рассматривается как файловая система. Каждый терминал имеет свой файл, который можно увидеть командой who
.
Например:
> who
Output:
username tty7 2016-01-08 10:36 (:0)
username pts/0 2016-01-08 12:56 (:0.0)
username pts/1 2016-01-08 16:05 (:0.0)
username pts/2 2016-01-08 17:10 (:0.0)
Здесь username pts/0
- специальный файл для 1-го терминала (2-я строка на выходе). Данные, записанные в этот специальный файл, будут отображаться 1-й терминал
Например:
> write username pts/0
Примечание: чтобы выйти из ввода сообщения, используйте Ctrl + z.