Linux的多用户登录tty,Linux终端多用户通信实用命令

一  命令

1.1 write

该命令将当前终端(源)输入的字符拷贝至目标用户的终端,从而发送消息给系统中某个用户。用法如下:

#write

[Ctrl+D]或[Ctrl+C]

当执行write命令时,目标用户将得到如下格式的标题:

Message from 源用户名@源主机 on 源字符终端 at 时:分 ...

随后输入的字符文本将被拷贝至指定用户的终端。目标用户若想回应,也必须执行write命令。

输入结束后,键入EOF(Ctrl+D)字符或中断(Ctrl+C)指令。目标用户将看到EOF消息,表明本次对话结束。

当目标用户登录多个终端时,可使用"write "命令显式地指定目标终端名称。或者,交由write命令自动选择空闲时间最短的那个终端(该终端通常当前在用)。

注意,与write命令类似的还有talk命令。该命令为一个可视化通信程序,用法更为复杂。

1.2 wall

该命令发送消息给系统中所有登录用户。用法如下:

# wall 或

# wall

[Ctrl+D]

其中,消息可作为wall命令的参数直接发送,也可写入wall命令的标准输入(此时消息长度限制为22行,且必须以EOF键结束)。

消息发送完毕时,目标用户将得到如下格式的标题和消息:

Broadcast message from 源用户名 (源字符终端) (星期 月 日 时:分:秒 年):

消息内容

该命令忽略时区变量,即标题中打印的时间基于系统本地时间。

1.3 mesg

该命令控制其他非root用户对当前终端的写访问权,如是否允许其他用户发来消息。用法如下:

该命令发送消息给系统中所有登录用户。用法如下:

# mesg [y|n]

其中,y允许写入当前终端,n则禁止写入。若不指定选项y|n,则mesg命令输出该终端的当前访问状态。

二  示例

上节命令使用示例如下(wall命令未列出其他用户的终端显示):

[wangxiaoyuan_@localhost ~]$ w 11:30:58 up 85 days, 3:45, 20 users, load average: 0.12, 1.82, 2.77

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

wangxiao pts/1 10.46.44.16 Mon09 0.00s 23.57s 0.00s sshd: wangxiaoyuan_ [priv]

root pts/12 10.46.51.170 Mon15 19:49m 0.00s 0.00s -bash

litianch pts/15 10.46.44.16 10:42 9:52 0.02s 0.02s -bash

litianch pts/22 10.46.44.29 Fri17 20:39m 0.09s 0.09s -bash

[wangxiaoyuan_@localhost ~]$ write litianchi write: litianchi is logged in more than once; writing to pts/15

hello tianchi, type 'write wangxiaoyuan_' and press ENTER

then enter 'welcome!' and press Ctrl+D to send the message to me.

//Ctrl+C

[litianchi@localhost ~]$

Message from wangxiaoyuan_@localhost.localdomain on pts/1 at 10:43 ...

hello tianchi, type 'write wangxiaoyuan_' and press ENTER

then enter 'welcome!' and press Ctrl+D to send the message to me.

EOF

//Enter

[litianchi@localhost ~]$ write wangxiaoyuan_ welcome!

//Ctrl+D

[wangxiaoyuan_@localhost ~]$

Message from litianchi@localhost.localdomain on pts/15 at 10:44 ...

welcome!

EOF

//Enter

[wangxiaoyuan_@localhost ~]wall hello everyone!

Broadcast message from wangxiaoyuan_ (pts/21) (Fri Oct 31 16:54:56 2014):

hello everyone!

[wangxiaoyuan_@localhost ~]$ wall world!

//Ctrl+C

Broadcast message from wangxiaoyuan_ (pts/1) (Tue Nov 25 11:38:12 2014):

world!

[wangxiaoyuan_@localhost ~]$ wall "Who's compling, please terminate! Just a test, pls go on..."

[wangxiaoyuan_@localhost ~]$

Broadcast message from wangxiaoyuan_ (pts/21) (Fri Oct 31 17:25:03 2014):

Who's compling, please terminate! Just a test, pls go on...

[litianchi@localhost ~]$ mesg is y

[litianchi@localhost ~]$ mesg n [litianchi@localhost ~]$ mesg is n

[wangxiaoyuan_@localhost ~]$ write litianchi pts/15

write: litianchi has messages disabled on pts/15

三  总结

本文所述的write和wall命令可能用于下述情况:

1) 需要独占编译资源时,可发送消息通知不要再执行编译任务;

2) 急需编译资源,而其他用户又在编译版本时,可发送消息通知暂停;

3) 遇到某用户执行死循环占用大量CPU时,可发送消息提醒退出。

不建议用于Linux系统用户间聊天通信(包括talk命令),毕竟过于原始。

像Linux终端一样使用windows命令行【cmder】

像Linux终端一样使用windows命令行[cmder] 下载cmder 我下载的是full版,下载之后是个压缩包,解压之后点击cmder.exe即可运行. 需要解决的几个问题 默认的是λ,当然还是 ...

Linux Tomcat日志查看实用命令

实用命令: 查看tomcat运行日志 tail -f catalina.out 通过关键字搜索查看日志 cat jeewx-2015-09-20.log | grep 验证码 查看固定时间日志 cat ...

Linux终端(terminal)清屏命令

windows CMD终端的清屏命令是cls Linux终端中的清屏命令有 1) clear 2) reset

Linux终端的一些快捷键命令

一.初识linux的终端种类:本地.远程 查看本终端命令: #tty 命令,看到当前所处的终端 #(w)who 命令,看到系统中所有登录的用户 其中,tty 终端为表示在本地命令行模式下打开的终端:p ...

linux终端下为什么用命令打开软件后,要关闭软件才能继续下一条命令?

用终端打开chromium浏览器(命令:chromium-browser)的时候发现打开浏览器之后无法继续在终端输入命令,只能关闭浏览器或者在终端按下Ctrl+c,此时系统将退出浏览器并可以继续在终端 ...

Linux重器之 Vim 实用命令

Vim 常用的命令 光标定位; hjkl  上下左右移动 0 $ 跳到行首或行尾 gg   shift+G 跳到整个文件的开头行或者结尾行 1G ,2G,3G........NG ,跳到第1.2.3 ...

Linux中的vim实用命令 -- (转)

VI 有2个模式.我自己定义的   1. 命令模式,一开始进去的模式.一些指定的键盘输入会产生不同的效果 2. 输入模式,在命令模式下输入冒号(:) 就可以进入输入模式.按Esc键即可退出命令模式. ...

Linux终端 Tab 补全命令

1. vi编辑器打开 /etc/bash.bashrc文件 vi /etc/bash.bashrc 2.找到文件中的下列代码 3.将注释符号#去掉,即改成 4.最后 source一下 /etc/bas ...

随机推荐

前端学PHP之错误处理

× 目录 [1]错误报告 [2]错误级别 [3]错误处理[4]自定义错误[5]错误日志[6]异常处理[7]自定义异常 前面的话 错误处理对于程序开发至关重要,不能提前预测到可能发生的错误,不能提前采取 ...

EntityFramework之原始查询及性能优化(六)

前言 在EF中我们可以通过Linq来操作实体类,但是有些时候我们必须通过原始sql语句或者存储过程来进行查询数据库,所以我们可以通过EF Code First来实现,但是SQL语句和存储过程无法进行映 ...

hihoCoder 后缀数组 重复旋律

#1403 : 后缀数组一·重复旋律 时间限制:5000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi平时的一大兴趣爱好就是演奏钢琴.我们知道一个音乐旋律被表示为长度为 N 的数构成 ...

--------------- Target-----------------

熟悉Java EE相关技术和框架(包括Java语言/Struts/Spring/iBatis/hibernet等):熟悉熟悉Spring,Struts,iBatis及至少一种Java 应用服务器如to ...

解决问题--VS2012中一个Panel覆盖另一个Panel时拖动时容易造成两个控件成父子关系的避免

在*.Designer.cs中,假如想把panel1覆盖到panel2上,但是VS自动让panel1成为panel2的子控件了,在文件中会有this.panel2.Controls.Add(this. ...

【leetcode】 Longest Valid Parentheses (hard)★

Given a string containing just the characters '(' and ')', find the length of the longest valid (wel ...

“迷宫”sprint——6.8

会议时间:2015.6.8 ,12:30——13:00 会议内容:开始第二阶段冲刺,分配任务. 我的任务:完成安卓环境搭建.

PAT乙级 1016. 部分A+B (15) C语言实现

1016. 部分A+B (15) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 正整数A的“DA(为1位整数)部 ...

orm框架与缓存的关系

1.mybatis规定,一级缓存没必要bean类实现序列化,但二级缓存bean类必须实现序列化. 因为二级缓存是基于namespace的也就是基于接口的,二级缓存可以设置存储源,可以是redis或者m ...

nyoj 素数环

算法:搜索 描述 有一个整数n,把从1到n的数字无重复的排列成环,且使每相邻两个数(包括首尾)的和都为素数,称为素数环. 为了简便起见,我们规定每个素数环都从1开始.例如,下图就是6的一个素数环. 输 ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值