1、write命令

(1)write命令的基本信息

  • 命令名称:write
  • 英文原意:send a message to another user
  • 所在路径:/usr/bin/write
  • 执行权限:所有用户。
  • 功能描述:向其他用户发送信息。

write命令的格式如下:

[root@localhost ~]# write 用户名 终端号

# 向在pts/1(远程终端1)登录的user1用户发送信息,使用"ctrl+D"快捷键保存发送的数据
[root@localhost ~ ] # write user1 pts/1
hel1o I will be in 5 minutes to restart,please save your data

(2)登陆终端号

  • Linux系统下有6个本地字符终端,用tty1-6来表示,每个终端的切换命令的快捷键是:alt+F1-6
  • 一个本地图形终端,用tty7来表示。

    切换使用的快捷键为ctrl+alt+F7(前提需要安装并启动系统的图形界面,并且快捷键按住3秒以上。)。
  • 远程终端,默认用pts/0-255来表示,Linux系统还支持再扩展。
  • 直接输入w,就可以查看所有链接系统的终端,如下图:



    最后显示执行w命令的终端就是当前终端。

提示:w命令和ls命令是一样的,当命令执行之后就消失了,很难抓到两个同时执行w命令的终端。

(3)练习

1)查看Linux系统中所有链接的用户:



2)向root-tty1发送信息:



回车后,ctrl+d进行保存并发送。

3)在root-tty1客户端查看信息:

2、wall命令

write命令用于给指定用户发送信息,而wall命令用于给所有登录用户发送信息,包括你自己。

执行时,在wall命令后加入需要发送的信息即可。

示例如下:

[root@localhost ~]# wall "I will be in 5 minutes to restart,please save your data"

# 或者输入wall命令回车后,输入需要发送的信息。然后回车后,ctrl+d进行保存并发送。
[root@DevOps ~]# wall
11111122222223333
[root@DevOps ~]#
Broadcast message from rooteDevops (pts/e)(Wed Jan 22 17:20:59 2020):
11111122222223333

3、mail 命令

mail是Linux的邮件客户端命令,可以利用这个命令给其他用户发送邮件。

mail命令的基本信息:

  • 命令名称:mail
  • 英文原意:send and receive Internet mail
  • 所在路径:/bin/mail
  • 执行权限:所有用户。
  • 功能描述:发送和接收电子邮件。

使用1:发送邮件

如果我们想要给其他用户发送邮件,则可以执行如下命令:

# 发送邮件给user1用户
[root@localhost ~]# mail user1
Subject:hello <-邮件标题
Nice to meet you!<-邮件具体内容
. <-使用"."来结束邮件输入
(也可以直接ctrl+d直接保存并发送,都可以)

我们接收到的邮件都保存在/var/spool/mail/用户名中,每个用户都有一个以自己的用户名命名的邮箱。

使用2:查看已经接收的邮件

我们可以直接在命令行中执行mail命令,进入mail的交互命令中,可以在这里查看已经接收到的邮件。

示例如下:

# 未阅读编号发件人时间标题
[root@localhost ~]# mail Heirloom Mail version 12.4 7/29/08.Type?for help.
"/var/spool/mail/root":1 message 1 new
>N 1 root Mon Dec 522:4568/1777 "test mai1" <-之前收到的邮件
>N 2 root Mon Dec 523:0818/602 "hello"

可以看到已经接收到的邮件列表,N代表未读邮件,如果是已经阅读过的邮件,则前面是不会有这个N的;之后的数字是邮件的编号,我们主要通过这个编号来进行邮件的操作。如果我们想要查看第一封邮件,则只需输入邮件的编号1就可以了。

这些交互命令是可以简化输入的,比如headers命令,就可以直接输入h,这是列出邮件标题列表的命令。

我们解释一下常用的交互命令:

  • 在交互命令中执行?,可以查看这个交互界面支持的命令。
  • headers:列出邮件标题列表,直接输入h命令即可。
  • delete:删除指定邮件。比如想要删除第二封邮件,可以输入d 2
  • save:保存邮件。可以把指定邮件保存成文件,如:s 2/tmp/test.mail
  • quit:退出,并把已经操作过的邮件进行保存。比如移除已删除邮件、保存已阅读邮件等。
  • exit:退出,但是不保存任何操作。

使用3:发送文件内容

如果我们想把某个文件的内容发送给指定用户,则可以执行如下命令:

# 把/root/anaconda-ks.cfg 文件的内容发送给 root用户

[root@localhost ~]# mail -s "test mail" root < /root/anaconda-ks.cfg

选项:
-s:指定邮件标题

我们在写脚本时,有时需要脚本自动发送一些信息给指定用户,把要发送的信息预先写到文件中,是一个非常不错的选择。(这种方式比较常用,避免了在交互页面中进行操作。)

『学了就忘』Linux基础命令 — 35、网络中与其他机器通信的命令的更多相关文章

  1. 『学了就忘』Linux基础 — 9、虚拟机中快照的使用

    目录 1.快照的含义 2.快照的使用 步骤一:创建拍摄快照 步骤二:填写快照信息并创建 步骤三:查看快照 步骤四:操作快照 3.管理虚拟机小技巧 4.关于快照说明 快照和克隆是VMware中两个非常实 ...

  2. 『学了就忘』Linux基础 — 10、VMware虚拟机中克隆的使用

    目录 1.什么是克隆 2.克隆的两种类型 (1)完整克隆 (2)链接克隆 3.克隆操作 步骤一:克隆虚拟机 步骤二:进行克隆导向 3.快照与克隆的区别 4.镜像的管理 快照和克隆是VMware中两个非 ...

  3. 『学了就忘』Linux基础命令 — 18、Linux命令的基本格式

    目录 1.命令提示符说明 2.命令的基本格式 (1)举例ls命令 (2)说明ls -l命令的 输出内容 1.命令提示符说明 [root@localhost ~] # []:这是提示符的分隔符号,没有特 ...

  4. 『学了就忘』Linux基础命令 — 20、文件操作的相关命令

    目录 1.touch 命令 2.stat命令 3.cat命令 4.more命令 5.less命令 6.head命令 7.tail命令 1.touch 命令 touch命令用于创建空文件或修改文件时间, ...

  5. 『学了就忘』Linux基础命令 — 22、Linux中的硬链接和软链接

    目录 1.文件和目录的基本存储 2.In命令介绍 (1)我们来看看ln命令的基本信息 (2)ln命令的基本格式 3.创建硬链接 (1)如何创建硬链接 (2)硬链接特征 (3)硬连接原理 4.创建软链接 ...

  6. 『学了就忘』Linux基础命令 — 24、文件基本权限的相关命令

    目录 1.chmod命令 2.权限模式 (1)用户身份. (2)赋予方式. (3)权限. 3.数字权限 4.文件常用权限 5.chown命令 6.chgrp命令 7.总结 常用基本权限操作命令: ch ...

  7. 『学了就忘』Linux基础命令 — 26、帮助命令

    目录 1.man命令 (1)man命令的快捷键 (2)man命令的帮助级别(了解即可) (3)man命令的使用 2.info命令 3.help命令 4.--help选项 1.man命令 man是最常见 ...

  8. 『学了就忘』Linux基础命令 — 27、搜索操作相关命令

    目录 1.whereis命令 2.which命令 3.locate命令 1.whereis命令 whereis是搜索系统命令的命令,也就是说,whereis命令不能搜索普通文件,而只能搜索系统命令. ...

  9. 『学了就忘』Linux基础命令 — 28、别名和常用快捷键

    目录 1.别名 2.常用快捷键 1.别名 别名也是Shell中的命令. 命令的别名,就是命令的小名,主要是用于照顾管理员使用习惯的. 命令格式: # 查询系统中命令别名 [root@localhost ...

  10. 『学了就忘』Linux基础命令 — 29、关机和重启

    目录 1.sync数据同步 2.shutdown命令 3.reboot命令 4.halt和poweroff命令 5.init命令 1.sync数据同步 sync命令的基本信息如下: 命令名称:sync ...

随机推荐

  1. 初探webpack之编写plugin

    初探webpack之编写plugin webpack通过plugin机制让其使用更加灵活,以适应各种应用场景,当然也大大增加了webpack的复杂性,在webpack运行的生命周期中会广播出许多事件, ...

  2. 全套Java教程_Java基础入门教程,零基础小白自学Java必备教程 #011 # 第十一单元 String&ArrayList #

    一.本单元知识点概述 (Ⅰ)知识点概述 二.本单元教学目标 (Ⅰ)重点知识目标 1.ArrayList集合的常用方法2.ArrayList存储数据和遍历数据3.String类的构造方法4.String ...

  3. 在开源项目或项目中使用git建立fork仓库

    前言: vector我们经常使用,对vector里面的基本函数构造函数.增加函数.删除函数.遍历函数我们也会用到.其中在使用遍历之后erase删除元素过程中,会出现一种删除最后一个元素破坏了迭代器的情 ...

  4. Java-多态(下)

    多态 一种类型的多种状态 还有一个小汽车的例子再理解下 汽车接口(相当于父类) package com.oop.demo10; public interface Car { String getNam ...

  5. 深入思考软件工程,开启 DevOps 之旅

    20 世纪 60 年代,软件开始脱离硬件,逐渐成为一个独立产业.至今,软件开发过程从瀑布模型.CMM/CMMI,到 20 年前敏捷的诞生,再到今天 DevOps 的火热,一代代软件人在思考和探索,如何 ...

  6. 题解 「BZOJ3636」教义问答手册

    题目传送门 Description 作为泉岭精神的缔造者.信奉者.捍卫者.传承者,Pear决定印制一些教义问答手册,以满足泉岭精神日益增多的信徒.Pear收集了一些有关的诗选.语录,其中部分内容摘录在 ...

  7. CF1082G Petya and Graph(最小割,最大权闭合子图)

    QWQ嘤嘤嘤 感觉是最水的一道\(G\)题了 顺便记录一下第一次在考场上做出来G qwqqq 题目大意就是说: 给你n个点,m条边,让你选出来一些边,最大化边权减点权 \(n\le 1000\) QW ...

  8. python中冒泡排序代码实现

    1.冒泡排序代码如下图: #冒泡算法l=[12,4,56,10,6,2]for i in range(0,6): for j in range(i+1,6): if l[i]>l[j]: a=l ...

  9. Python中的sys.stdin和input、sys.stdout与print--附带讲解剑指offer42-连续子数组的最大和

    2020秋招季,终于开始刷第一套真题了,整套试卷就一道编程题,还是剑指offer上的原题,结果答案死活不对,最后干脆直接提交答案算了,看了下别人的答案,原来是输入数据没有获取的原因,不过这个语法sys ...

  10. Vite启动后提示Network: use `--host` to expose

    当使用 Vite 构建项目后,发现只有localhost + 端口 服务,没有 IP + 端口服务. 运行npm run dev,终端提示Vite启动后提示Network: use '--host' ...