[步骤] sftp 的搭建

步骤目录:

步骤一:创建 sftp 用户的组

步骤二:创建用于 sftp 的主目录
2.1 创建用于 sftp 的主目录
2.2 设置用于 sftp 的主目录的所属组和所属主
2.3 设置用于 sftp 的主目录的权限

步骤三:开启 sftp 服务
3.1 修改 sshd 配置文件
3.2 重启 sshd 服务

步骤四:创建 sftp 用户
4.1 创建 sftp 用户
4.1.1 创建 sftp 用户
4.1.2 给 sftp 用户设置密码
4.2 创建 sftp 用户的主目录
4.2.1 创建 sftp 用户的主目录
4.2.2 设置 sftp 用户的主目录的所属组和所属主
4.2.3 设置 sftp 用户的主目录的权限
4.3 创建 sftp 用户有写入权限的目录
4.3.1 创建 sftp 用户有写入权限的目录
4.3.2 设置 sftp 用户有写入权限的目录的所属组和所属主
4.3.3 创建 sftp 用户有写入权限的目录的权限

步骤五: sftp 的使用
5.1 登陆 sftp
5.2 sftp 可使用的命令
5.2.1 查看当前目录下的所有文件和目录
5.2.2 创建某一个目录
5.2.3 从被远程的主机上下载一个文件
5.2.4 将本地的一个文件上传到被远程的主机上

具体的操作步骤:

步骤一:创建 sftp 用户的组

# groupadd sftp

步骤二:创建用于 sftp 的主目录
2.1 创建用于 sftp 的主目录

# mkdir /sftp

(补充:这里以创建 /sftp 目录为例)

2.2 设置用于 sftp 的主目录的所属组和所属主

# chown root:sftp /sftp

(补充:这里以给 /sftp 设置 root 主和 sftp 组为例)

2.3 设置用于 sftp 的主目录的权限

# chmod 755 /sftp

(补充:这里以给 /sftp 目录权限为例)

步骤三:开启 sftp 服务
3.1 修改 sshd 配置文件

# vim /etc/ssh/sshd_config

将以下内容:

......
Subsystem       sftp    /usr/libexec/openssh/sftp-server
......

修改为:

......
# Subsystem       sftp    /usr/libexec/openssh/sftp-server
......

并添加以下内容:

......
Subsystem       sftp    internal-sftp
Match Group sftp
ChrootDirectory /sftp/%u
ForceCommand    internal-sftp
AllowTcpForwarding no
X11Forwarding no


补充:这里以
(1)sftp 的所属组是 sftp
(2)以 /sftp/%u 作为 sftp 的家目录
为例

3.2 重启 sshd 服务

# systemctl restart sshd

步骤四:创建 sftp 用户
4.1 创建 sftp 用户
4.1.1 创建 sftp 用户

# useradd -g sftp -s /bin/false sftpuser

(补充:这里以创建名为 sftpuser ,所属组为 sftp,解释器是 /bin/false 的用户为例)

4.1.2 给 sftp 用户设置密码

# passwd sftpuser

(补充:这里以给 sftpuser 用户设置密码为例)

4.2 创建 sftp 用户的主目录
4.2.1 创建 sftp 用户的主目录

# mkdir /sftp/sftpuser

(补充:这里以创建 /sftp/sftpuser 目录为例)

4.2.2 设置 sftp 用户的主目录的所属组和所属主

# chown root:sftp /sftp/sftpuser

(补充:这里以给 /sftp/sftpuser 设置 root 主和 sftp 组为例)

4.2.3 设置 sftp 用户的主目录的权限

# chmod 755 /sftp/sftpuser

(补充:这里以给 /sftp/sftpuser 目录权限为例)

4.3 创建 sftp 用户有写入权限的目录
4.3.1 创建 sftp 用户有写入权限的目录

# mkdir /sftp/sftpuser/write

(补充:这里以创建 /sftp/sftpuser/write 目录为例)

4.3.2 设置 sftp 用户有写入权限的目录的所属组和所属主

# chown sftpuser:sftp /sftp/sftpuser/write

(补充:这里以给 /sftp/sftpuser/write 设置 sftpuser 主和 sftp 组为例)

4.3.3 创建 sftp 用户有写入权限的目录的权限

# chmod 755 /sftp/sftpuser/write

(补充:这里以给 /sftp/sftpuser/write 目录权限为例)

步骤五: sftp 的使用
5.1 登陆 sftp

# sftp sftpuser@127.0.0.0.1

(补充:这里以使用 sftpuser 用户登陆 IP 地址为 127.0.0.1 的 sftp 为例)

5.2 sftp 可使用的命令
5.2.1 查看当前目录下的所有文件和目录

sftp> ls

5.2.2 创建某一个目录

sftp> mkdir test

(补充:这里以创建 test 目录为例)

5.2.3 从被远程的主机上下载一个文件

sftp> get test.txt

(补充:这里以下载 test.txt 文件为例)

5.2.4 将本地的一个文件上传到被远程的主机上

sftp> put local.txt

(补充:这里以上传 local.txt 文件为例)

[实验] CentOS&RHEL 自动挂载服务的搭建 (通过 Autofs 和 NFS 实现) (CentOS 8 版)

纪念:站主于 2020 年 6 月完成了此开源实验,并将过程中的所有命令经过整理和注释以后,形成以下教程

步骤目录:

步骤一:规划拓扑
1.1 服务器列表
1.2 服务器列表简介

步骤二:系统环境要求

步骤三:所有服务器安装 NFS 服务
3.1 所有服务器安装 NFS 服务
3.2 设置所有服务器开机自启 NFS 服务
3.3 所有服务器启动 NFS 服务

步骤四:配置 NFS 服务
4.1 创建用于 NFS 服务的目录
4.1.1 创建被 NFS 服务共享的目录
4.1.2 创建用于自动挂载 NFS 服务分享目录的目录
4.2 配置服务端的 NFS 服务配置文件
4.2.1 在服务端上添加可被 NFS 服务挂载的选项
4.2.2 让刚刚修改的 NFS 服务配置文件生效
4.3 部署客户端的 Autofs 自动挂载服务
4.3.1 安装 Autofs 服务
4.3.2 设置客户端开机自启 Autofs 服务
4.3.3 在客户端上设置 Autofs 自动挂载服务
4.3.3.1 在客户端上设置 Autofs 自动挂载的主配置文件
4.3.3.2 在客户端上设置 Autofs 的从配置文件
4.3.4 让刚刚修改的 Autofs 自动挂载服务配置文件生效

步骤五:查看 Autofs 自动挂载服务是否设置成功
5.1 查看客户端当前的目录挂载情况
5.2 进入到 Autofs 自动挂载的目录
5.3 再次查看客户端当前的目录挂载情况

具体的操作步骤:

步骤一:规划拓扑
1.1 服务器列表

服务端 192.168.101.10
客户端 192.168.101.11

1.2 服务器列表简介

1) 服务器提供 NFS 服务将自己的目录分享
2) 客户端挂载和使用 NFS 服务将服务端分享的目录挂载在自己的目录上

步骤二:系统环境要求

1) 所有服务器的系统都需要是 CentOS 8 版本
2) 所有服务器都要关闭防火墙
3) 所有服务器系统都要配置好可用的软件源
4) 需要按照拓扑图给对应的服务器配置好 IP 地址和主机名
5) 所有服务器都要可以相互 ping 通自己和对方的 IP 地址和主机名

步骤三:所有服务器安装 NFS 服务
3.1 所有服务器安装 NFS 服务

(分别在服务端和客户端上执行以下步骤)

# yum -y install rpcbind nfs-utils

3.2 设置所有服务器开机自启 NFS 服务

(分别在服务端和客户端上执行以下步骤)

# systemctl enable nfs-server

3.3 所有服务器启动 NFS 服务

(分别在服务端和客户端上执行以下步骤)

# systemctl start nfs-server

步骤四:配置 NFS 服务
4.1 创建用于 NFS 服务的目录
4.1.1 创建被 NFS 服务共享的目录

(只在服务端上执行以下步骤)

# mkdir /nfsshare

4.1.2 创建用于自动挂载 NFS 服务分享目录的目录

(只在客户端上执行以下步骤)

# mkdir /autofs

4.2 配置服务端的 NFS 服务配置文件
4.2.1 在服务端上添加可被 NFS 服务挂载的选项

(只在服务端上执行以下步骤)

# vim /etc/exports

添加以下内容:

......
/nfsshare 192.168.101.0/24(rw,sync,no_root_squash,no_subtree_check)

(补充:这里的 192.168.101.0.24 是客户端的 IP 地址所在的网段)

4.2.2 让刚刚修改的 NFS 服务配置文件生效

(只在服务端上执行以下步骤)

# exportfs -a

4.3 部署客户端的 Autofs 自动挂载服务
4.3.1 安装 Autofs 服务

(只在客户端上执行以下步骤)

# yum -y install autofs

4.3.2 设置客户端开机自启 Autofs 服务

(只在客户端上执行以下步骤)

# systemctl enable autofs

4.3.3 在客户端上设置 Autofs 自动挂载服务
4.3.3.1 在客户端上设置 Autofs 自动挂载的主配置文件

(只在客户端上执行以下步骤)

# vim /etc/auto.master

将以下内容:

......
#
/misc   /etc/auto.misc
#
......

修改为:

......
/misc   /etc/auto.misc
/autofs /etc/auto.autofs
......

(补充:在这里指定了 /etc/auto.autofs 为 Autofs 的从配置文件,并且将 autofs 的主目录设置为 /autofs)

4.3.3.2 在客户端上设置 Autofs 的从配置文件

(只在客户端上执行以下步骤)

# cp /etc/auto.misc /etc/auto.autofs
# vim /etc/auto.autofs

将以下内容:

......
cd              -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
......

修改为:

......
cd              -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
directory01             -fstype=nfs,rw 192.168.101.10:/nfsshare
......

(补充:在这里指定了 Autofs 的次级目录为 directory01,即:/autofs/directory01)

4.3.4 让刚刚修改的 Autofs 自动挂载服务配置文件生效

(只在客户端上执行以下步骤)

# systemctl restart autofs

步骤五:查看 Autofs 自动挂载服务是否设置成功
5.1 查看客户端当前的目录挂载情况

(只在客户端上执行以下步骤)

# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        957M     0  957M   0% /dev
tmpfs           971M     0  971M   0% /dev/shm
tmpfs           971M   17M  954M   2% /run
tmpfs           971M     0  971M   0% /sys/fs/cgroup
/dev/vda1        10G  1.6G  8.5G  16% /
tmpfs           195M     0  195M   0% /run/user/0

5.2 进入到 Autofs 自动挂载的目录

(只在客户端上执行以下步骤)

# cd /autofs/directory01

5.3 再次查看客户端当前的目录挂载情况

(只在客户端上执行以下步骤)

# df -h
Filesystem                Size  Used Avail Use% Mounted on
devtmpfs                  957M     0  957M   0% /dev
tmpfs                     971M     0  971M   0% /dev/shm
tmpfs                     971M   17M  955M   2% /run
tmpfs                     971M     0  971M   0% /sys/fs/cgroup
/dev/vda1                  10G  1.6G  8.5G  16% /
tmpfs                     195M     0  195M   0% /run/user/0
192.168.101.10:/nfsshare   10G  1.6G  8.5G  16% /autofs/directory01

(补充:在进入到 Autofs 自动挂载的目录后,自动挂载就在系统中自动出现了)

[命令] Linux 命令 du (统计文件或目录大小)

内容一:du 命令的参数

1) h 以方便人类阅读的方式进行显示
2) s 将所有文件的大小进行相加

内容二:du 命令的使用案例
2.1 案例一:统计当前目录下所有文件的大小,将结果相加

# du -s
104989232

(补充:这里查看到的大小是 104989232)

2.2 案例二:统计某一个目录下所有文件的大小,并以方便人类阅读的方式进行显示

# du -h /etc/
8.0K	/etc/dnf/modules.d
0	/etc/dnf/aliases.d
0	/etc/dnf/modules.defaults.d
0	/etc/dnf/plugins/copr.d
12K	/etc/dnf/plugins
12K	/etc/dnf/protected.d
8.0K	/etc/dnf/vars
44K	/etc/dnf
0	/etc/terminfo
......

2.3 案例三:统计当前目录下所有文件的大小,将结果相加,并以方便人类阅读的方式进行显示

# du -sh
101G	.

(补充:这里查看到的大小是 101 G)

2.4 案例四:统计某个目录的大小,并以方便人类阅读的方式进行显示

# du -sh <file name>

2.5 案例五:统计当前目录的一级子目录的大小,并以方便人类阅读的方式进行显示

# du -h --max-depth=1

[命令] Linux 命令 vim (文件编辑)

内容目录:

内容一:vim 简介
1.1 vim 模式
1.2 使用 vim
1.2.1 通过 vim 打开某一个文件
1.2.2 通过 vim 打开某一个文件,并自动进入到某一行

内容二:vim 在命令模式下的操作
2.1 在命令模式下让光标移动
2.1.1 在命令模式下让光标网上移动
2.1.2 在命令模式下让光标网下移动
2.1.3 在命令模式下让光标网左移动
2.1.4 在命令模式下让光标网右移动
2.1.5 在命令模式下让光标移动到文件的指定行数
2.1.6 在命令模式下让光标移动到文件首尾
2.1.6.1 在命令模式下让光标移动到文件首部
2.1.6.2 在命令模式下让光标移动到文件尾部
2.2 在命令模式下删除数据
2.2.1 在某一行的范围内删除数据
2.2.1.1 在某一行的范围内删除一个字符
2.2.1.1.1 在光标所在行的范围内删除光标之后的一个字符
2.2.1.1.2 在光标所在行的范围内删除光标之前的一个字符
2.2.1.2 在某一行的范围内删除多个字符
2.2.1.2.1 在光标所在行的范围内删除光标之后的多个字符
2.2.1.2.2 在光标所在行的范围内删除光标之前的多个字符
2.2.1.2.3 在光标所在行的范围内删除光标之前的所有字符
2.2.1.2.4 在光标所在行的范围内删除光标之后的所有字符
2.2.2 进行整行的删除
2.2.2.1 删除光标所在行
2.2.2.2 从光标所在行开始删除多行
2.2.2.3 从光标所在行开始删除此行和后面的所有行
2.2.2.4 从光标所在行开始删除此行和前面的所有行
2.2.3 重复相同的删除操作
2.3 在命令模式下复制数据
2.3.1 在某一行的范围内复制数据
2.3.1.3 在光标所在行的范围内复制光标之前的所有字符
2.3.1.4 在光标所在行的范围内复制光标之后的所有字符
2.3.2 进行整行的复制
2.3.2.1 复制光标所在行
2.3.2.2 从光标所在行开始复制多行
2.3.2.3 从光标所在行开始复制此行和后面的所有行
2.3.2.4 从光标所在行开始复制此行和前面的所有行
2.4 在命令模式下复制数据
2.4.1 从光标所在行开始向上复制
2.4.2 从光标所在行开始向上复制
2.5 在命令模式下进入其他模式
2.5.1 在命令模式下进入输入模式
2.5.2 在命令模式下进入末行模式
2.5.3 在命令模式下进入视图模式
2.5.3.1 以行的方式进入视图模式
2.5.3.2 以字符的方式进入视图模式
2.5.3.3 vim 字符模式的使用案例
2.5.4 在命令模式下进入替换模式
2.6 在命令模式下的其他操作
2.6.1 将光标所在行与下面的行合并
2.6.2 重复上一动作
2.6.3 撤销上一个动作
2.6.4 保存此文当并退出 vim 模式

内容三:vim 在末行模式下的操作
3.1 在末行模式下对当前内容进行保存并退出 vim 模式
3.2 在末行模式下的行号设置
3.2.1 设置行号
3.2.2 取消行号
3.3 在末行模式下搜索
3.3.1 在末行模式下搜索关键字
3.3.1.1 向下查找匹配的关键字
3.3.1.2 向上查找匹配的关键字
3.3.2 在末行模式下搜索行号
3.4 在末行模式下替换关键字的案例
3.5 在末行模式进入命令模式
3.6 在末行模式下的其他设置

内容四:vim 在输入模式下的操作
4.1 在输入模式下输入内容
4.2 在输入模式下进入命令模式

具体的内容:

内容一:vim 简介
1.1 vim 模式简介

1) 命令模式:主要用于对文件进行批量编辑
2) 末行模式:主要用于保存退出文件
3) 输入模式:主要用于编辑文件

1.2 使用 vim
1.2.1 通过 vim 打开某一个文件

# vim <file>

(补充:此时将自动进入命令模式)

1.2.2 通过 vim 打开某一个文件,并自动进入到某一行

# vim +<line number> <file>

(补充:此时将自动进入命令模式)

内容二:vim 在命令模式下的操作
2.1 在命令模式下让光标移动
2.1.1 在命令模式下让光标网上移动

按下 “上方向键”

或者:

按下 “k”

或者:

按下 “<任意数字>” 再按下 “上方向键”

(注意:此方法会向上方移动对应数字个光标位)

2.1.2 在命令模式下让光标网下移动

按下 “下方向键”

或者:

按下 “j”

或者:

按下 “<任意数字>” 再按下 “下方向键”

(注意:此方法会向下方移动对应数字个光标位)

2.1.3 在命令模式下让光标网左移动

按下 “左方向键”

或者:

按下 “h”

或者:

按下 “任意数字” 之后再按 “左方向键”

(注意:此方法会向左方移动对应数字个光标位)

2.1.4 在命令模式下让光标网右移动

按下 “右方向键”

或者:

按下 “l”

或者:

按下 “<任意数字>” 之后再按 “右方向键”

(注意:此方法会向右方移动对应数字个光标位)

2.1.5 在命令模式下让光标移动到文件的指定行数

按下 “<任意数字>” 之后再按 “G”

(注意:此方法会让光标移动到对应数字的行)

2.1.6 在命令模式下让光标移动到文件首尾
2.1.6.1 在命令模式下让光标移动到文件首部

按下 “g” 再按下 “g”

2.1.6.2 在命令模式下让光标移动到文件尾部

按下 “G”

2.2 在命令模式下删除数据
2.2.1 在某一行的范围内删除数据
2.2.1.1 在某一行的范围内删除一个字符
2.2.1.1.1 在光标所在行的范围内删除光标之后的一个字符

按下 “x”

2.2.1.1.2 在光标所在行的范围内删除光标之前的一个字符

按下 “X”

2.2.1.2 在某一行的范围内删除多个字符
2.2.1.2.1 在光标所在行的范围内删除光标之后的多个字符

按下 “<任意数字>” 之后再按 “x”

(注意:此方法会在光标所在行的范围内从光标所在位置开始向后删除对应数字个字符)

2.2.1.2.2 在光标所在行的范围内删除光标之前的多个字符

按下 “<任意数字>” 之后再按 “X”

(注意:此方法会在光标所在行的范围内从光标所在位置开始向前删除对应数字个字符)

2.2.1.2.3 在光标所在行的范围内删除光标之前的所有字符

同时按下 “d” 和 “0”

2.2.1.2.4 在光标所在行的范围内删除光标之后的所有字符

同时按下 “d” 和 “$”

2.2.2 进行整行的删除
2.2.2.1 删除光标所在行

按下 “d” 之后再按 “d”

2.2.2.2 从光标所在行开始删除多行

按下 “<任意数字>” 之后再按 “d” 之后再按 “d”

(注意:此方法会从光标所在行开始向后删除到对应数字个行)

2.2.2.3 从光标所在行开始删除此行和后面的所有行

按下 “d” 之后再按 “G”

2.2.2.4 从光标所在行开始删除此行和前面的所有行

按下 “d” 之后再按 “1” 之后再按 “G”

或者:

按下 “d” 之后再按 “g” 之后再按 “g”

2.2.3 重复相同的删除操作

按下 “c”

2.3 在命令模式下复制数据
2.3.1 在某一行的范围内复制数据
2.3.1.3 在光标所在行的范围内复制光标之前的所有字符

同时按下 “y” 和 “0”

2.3.1.4 在光标所在行的范围内复制光标之后的所有字符

同时按下 “y” 和 “$”

2.3.2 进行整行的复制
2.3.2.1 复制光标所在行

按下 “y” 之后再按 “y”

2.3.2.2 从光标所在行开始复制多行

按下 “<任意数字>” 之后再按 “y” 之后再按 “y”

(注意:此方法会从光标所在行开始向后复制对应数字个行)

2.3.2.3 从光标所在行开始复制此行和后面的所有行

按下 “y” 之后再按 “G”

2.3.2.4 从光标所在行开始复制此行和前面的所有行

按下 “y” 之后再按 “1” 之后再按 “G”

或者:

按下 “y” 之后再按 “g” 之后再按 “g”

2.4 在命令模式下复制数据
2.4.1 从光标所在行开始向上复制

按下 “p”

2.4.2 从光标所在行开始向上复制

按下 “P”

2.5 在命令模式下进入其他模式
2.5.1 在命令模式下进入输入模式

1) 按下 “i”,在光标所在位置进入输入模式
2) 按下 “a”,在光标所在位置的后一个字符进入输入模式
3) 按下 “A”,在光标所在行的行尾进入插入模式
4) 按下 “I”,在光标所在行的行首进入插入模式
5) 按下 “o”,在光标所在行的下一行行首进入输入模式

2.5.2 在命令模式下进入末行模式

按下 “:”

2.5.3 在命令模式下进入视图模式
2.5.3.1 以行的方式进入视图模式

按下 “v”

或者:

按下 “V”

2.5.3.2 以字符的方式进入视图模式

同时按下 “ctrl” 和 “v”

2.5.3.3 vim 字符模式的使用案例

1) 在光标所在行行首,同时按下 “ctrl” 和 “v” 再选择对应的行首再按 “d” 或者 “x”,删除在这些行行首的字符
2) 在光标所在行行首,同时按下 “ctrl” 和 “v” 再选择对应的行首再按 “I” 再输入 <想要插入的内容> 再按 “ESC” ,在这些行行首插入这些内容
3) 在光标所在行行首,同时按下 “ctrl” 和 “v” 再按下再按 “I” 再按 “g” 再按 “g” 再输入 <想要插入的内容> 再按 “ESC” ,在光标所在行以及前面的所有行的行首插入这些内容
4) 在光标所在行行首,同时按下 “ctrl” 和 “v” 再按下再按 “I” 再按 “G” 再输入 <想要插入的内容> 再按 “ESC” ,在这光标所在行以及后面的所有行的行首插入这些内容

2.5.4 在命令模式下进入替换模式

按下 “R”

2.6 在命令模式下的其他操作
2.6.1 将光标所在行与下面的行合并

按下 “J”

2.6.2 重复上一动作

按下 “ctrl” 和 “r”

或者:

按下 “.“

2.6.3 撤销上一个动作

按下 “u”

2.6.4 保存此文当并退出 vim 模式

按下 “Z” 和 “Z”

内容三:vim 在末行模式下的操作
3.1 在末行模式下对当前内容进行保存并退出 vim 模式

1) :w #保存当前内容
2) :q #退出 vim 模式
3) :wq #保存当前内容并退出
4) 😡 #保存当前内容并退出
5) :q! #不保存当前内容并强制退出
6) :wq! #强制保存当前内容并退出

3.2 在末行模式下的行号设置
3.2.1 设置行号

:set nu #设置行号

3.2.2 取消行号

:set nonu #取消行号

3.3 在末行模式下搜索
3.3.1 在末行模式下搜索关键字
3.3.1.1 向下查找匹配的关键字

:/<关键字> 之后按 “n” 或者 “N” 查看下一个匹配的关键字

3.3.1.2 向上查找匹配的关键字

:?<关键字> 之后按 “n” 或者 “N” 查看下一个匹配的关键字

3.3.2 在末行模式下搜索行号

:<行号> 之后按“回车”

3.4 在末行模式下替换关键字的案例

1) :s /<旧关键字>/<新关键字> #以 <新关键字> 替换光标所在行的第一个 <旧关键字>
2) :s /<旧关键字>/<新关键字>/g #以 <新关键字> 替换光标所在行的所有 <旧关键字>
3) :1,5 s/<旧关键字>/<新关键字>/g #以 <新关键字> 替换从 1 到 5 行的所有 <旧关键字>
4) :,+5 s/<旧关键字>/<新关键字>/g #以 <新关键字> 替换从光标所在行开始 5 行的所有 <旧关键字>
5) :7,%s/<旧关键字>/<新关键字>/g #以 <新关键字> 替换倒数第 7 行到最后 1 行的所有 <旧关键字>
6) :%s/<旧关键字>/<新关键字>/g #以 <新关键字> 替换全文的所有 <旧关键字>

3.5 在末行模式进入命令模式

:按 “ESC”

3.6 在末行模式下的其他设置

1) :w /<新文件名>,将当前内容另存为另一个文件
2) :r /<文件名>,读取 <文件名> 里的内容到文本并直接插入到光标所在位置
3) :! <命令>,在 vim 的命末行模式时使用 Linux 命令

内容四:vim 在输入模式下的操作
4.1 在输入模式下输入内容

正常键入内容即可

4.2 在输入模式下进入命令模式

按 “ESC”

[内容] Linux 通佩符

内容一:Linux 通佩符
1.1 匹配任意一个字符

1.2 匹配任意多个字符

*

1.3 匹配任意多个字符中的一个

[<character><character><character>]

或者:

{<character>,<character>,<character>}

1.4 不匹配任意多个字符中的一个

[^<character><character><character>]

或者:

[!<character><character><character>]

1.5 匹配一段连续的字符

{<head character>...<tail character>}

内容二:Linux 通佩符的使用案例
2.1 案例一:多循环匹配文件或目录

# touch {a..b}{1..3}.txt
# ls
a1.txt  a2.txt  a3.txt  b1.txt  b2.txt  b3.txt

2.2 案例二:匹配所有文件和目录,包括隐藏文件和目录

# cd /tmp
# tar -zcvf /home/zhumingyu/all.tar.gz .[!.]* *