Linux加强篇-Vim编辑器

发布于:2024-04-23 ⋅ 阅读:(19) ⋅ 点赞:(0)

目录

⛳️推荐

Vim文本编辑器

编写简单文档

配置主机名称

配置网卡信息

配置软件仓库


⛳️推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站

Vim文本编辑器

在Linux系统中一切都是文件,而配置一个服务就是在修改其配置文件的参数,Vim编辑器中设置了3种模式—命令模式、末行模式和编辑模式,每种模式分别又支持多种不同的命令快捷键。

命令模式:控制光标移动,可对文本进行复制、粘贴、删除和查找等工作。

输入模式:正常的文本录入。

末行模式:保存或退出文档,以及设置编辑环境。

image

在每次运行Vim编辑器时,默认进入命令模式,此时需要先切换到输入模式后再进行文档编写工作。而每次在编写完文档后需要先返回命令模式,然后再进入末行模式,执行文档的保存或退出操作。在Vim中,无法直接从输入模式切换到末行模式。

命令模式中最常用命令

命令 作用
dd 删除(剪切)光标所在整行
5dd 删除(剪切)从光标处开始的5行
yy 复制光标所在整行
5yy 复制从光标处开始的5行
n 显示搜索命令定位到的下一个字符串
N 显示搜索命令定位到的上一个字符串
u 撤销上一步的操作
p 将之前删除(dd)或复制(yy)过的数据粘贴到光标后面

末行模式主要用于保存或退出文件,以及设置Vim编辑器的工作环境,还可以让用户执行外部的Linux命令或跳转到所编写文档的特定行数。要想切换到末行模式,在命令模式中输入冒号

 末行模式中最常用命令

命令 作用
:w 保存
:q 退出
:q! 强制退出(放弃对文档的修改内容)
:wq! 强制保存退出
:set nu 显示行号
:set nonu 不显示行号
:命令 执行该命令
:整数 跳转到该行
:s/one/two 将当前光标所在行的第一个one替换成two
:s/one/two/g 将当前光标所在行的所有one替换成two
:%s/one/two/g 将全文中的所有one替换成two
?字符串 在文本中从下至上搜索该字符串
/字符串 在文本中从上至下搜索该字符串

编写简单文档

编写脚本文档

[root@localhost ~]# vim test.txt

打开文档后,默认进入的是Vim编辑器的命令模式。

image.png

使用a、i、o三个键从命令模式切换到输入模式,a键与i键分别是在光标后面一位和光标当前位置切换到输入模式,而o键则是在光标的下面再创建一个空行。

image.png

在编写完之后,要想保存并退出,必须先敲击键盘的Esc键从输入模式返回命令模式,然后再输入“:wq!”切换到末行模式才能完成保存退出操作。

image.png

配置主机名称

在Linux系统中,主机名大多保存在/etc/hostname文件中,将文件内容改为“weihongbin”

第1步:使用Vim编辑器修改/etc/hostname主机名称文件。

第2步:把原始主机名称删除后追加“weihongbin”。注意,使用Vim编辑器修改主机名称文件后,要在末行模式下执行“:wq!”命令才能保存并退出文档。

第3步:保存并退出文档,然后使用hostname命令检查是否修改成功。

[root@localhost ~]# vim /etc/hostname

image.png

[root@localhost ~]# systemctl restart systemd-hostnamed

[root@localhost ~]# hostname

weihongbin

配置网卡信息

名称为ifcfg-ens160的网卡设备,将其配置为开机自启动,并且IP地址、子网、网关等信息由人工指定(动态网卡转为静态网卡)。

第1步:首先切换到/etc/sysconfig/network-scripts目录中(存放着网卡的配置文件)。

第2步:使用Vim编辑器修改网卡文件ifcfg-ens160,逐项写入下面的配置参数并保存退出。由于每台设备的硬件及架构是不一样的,因此请读者使用ifconfig命令自行确认各自网卡的默认名称。

踩坑大集锦

提前先查一下自己的虚拟网络是什么网关,不要跟我写的一样导致ping: www.baidu.com: Name or service not known连不上网,选择虚拟网络编辑器

image.png

进入虚拟网络编辑器,取消DHCP,同时选择NAT设置,将网关改成192.168.227.2

image.png

image.png

修改vm8的网关,搜索控制面板\网络和 Internet\网络连接,选择vm8,右击属性,选IPV4,属性

image.png

image.png

配置一下IP地址,和默认网关,IP地址选192.168.227.1,默认网关选192.168.227.2,dns首选8.8.8.8

image.png

这时候我们看一下我们的本机主机,通过win+R命令,输入cmd进入命令符,输入ipconfig

image.png

配置完成,然后看一下以下这几个概念

设备类型:TYPE=Ethernet

地址分配模式:BOOTPROTO=static

网卡名称:NAME=ens160

是否启动:ONBOOT=yes

IP地址:IPADDR=192.168.227.10

子网掩码:NETMASK=255.255.255.0

网关地址:GATEWAY=192.168.227.1

DNS地址:DNS1=192.168.227.1

DNS地址:DNS2=8.8.8.8

第3步:重启网络服务并测试网络是否连通。

进入到网卡配置文件所在的目录,然后编辑网卡配置文件,在其中填入下面的信息(红色为修改或添加部分),默认我们的虚拟机是192.168.227.10,你们也可以设置其他的:

[root@localhost ~]# cd /etc/sysconfig/network-scripts/

[root@localhost network-scripts]# vim ifcfg-ens160  

TYPE=Ethernet

PROXY_METHOD=none

BROWSER_ONLY=no

BOOTPROTO=static

DEFROUTE=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

NAME=ens160

UUID=83230184-678e-4b11-b50c-20e37b235a70

DEVICE=ens160

ONBOOT=yes

IPADDR=192.168.227.10

NETMASK=255.255.255.0

GATEWAY=192.168.227.2

DNS1=192.168.227.1

DNS2=8.8.8.8

重启reboot(如果你现在是在用xshell连接建议先断开连接后重新接入新的ip地址再试)

不想重启可以执行:

systemctl restart NetworkManagernmcli connection reload ens160

[root@weihongbin ~]# ping 192.168.227.10

PING 192.168.227.10 (192.168.227.10) 56(84) bytes of data.

64 bytes from 192.168.227.10: icmp_seq=1 ttl=64 time=0.080 ms

64 bytes from 192.168.227.10: icmp_seq=2 ttl=64 time=0.048 ms

[root@localhost network-scripts]# ping www.baidu.com

PING www.a.shifen.com (220.181.38.149) 56(84) bytes of data.

64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=1 ttl=128 time=5.71 ms

64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=2 ttl=128 time=5.28 ms

64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=3 ttl=128 time=5.72 ms

配置软件仓库

软件仓库是一种能进一步简化RPM管理软件的难度以及自动分析所需软件包及其依赖关系的技术,搭建并配置软件仓库的大致步骤如下所示

第1步:进入/etc/yum.repos.d/目录中(因为该目录存放着软件仓库的配置文件,红色为添加字段)。

image.png

第2步:使用Vim编辑器创建一个名为rhel8.repo的新配置文件(文件名称可随意,但后缀必须为.repo),逐项写入下面的配置参数并保存退出。

仓库名称:具有唯一性的标识名称,不应与其他软件仓库发生冲突。

描述信息(name):可以是一些介绍性的词,易于识别软件仓库的用处。

仓库位置(baseurl):软件包的获取方式,可以使用FTP或HTTP下载,也可以是本地的文件(需要在后面添加file参数)。

是否启用(enabled):设置此源是否可用;1为可用,0为禁用。

是否校验(gpgcheck):设置此源是否校验文件;1为校验,0为不校验。

公钥位置(gpgkey):若上面的参数开启了校验功能,则此处为公钥文件位置。若没有开启,则省略不写。

[root@weihongbin yum.repos.d]# vim rhel8.repo

[BaseOS]

name=BaseOS

baseurl=file:///media/cdrom/BaseOS

enabled=1

gpgcheck=0

[AppStream]

name=AppStream

baseurl=file:///media/cdrom/AppStream

enabled=1

gpgcheck=0

第3步:按配置参数中所填写的仓库位置挂载光盘,并把光盘挂载信息写入/etc/fstab文件中(红色添加)。

[root@weihongbin yum.repos.d]# mkdir -p /media/cdrom

[root@weihongbin yum.repos.d]# mount /dev/cdrom /media/cdrom

mount: /media/cdrom: WARNING: device write-protected, mounted read-only.

[root@weihongbin yum.repos.d]# vim /etc/fstab

#  

# /etc/fstab

# Created by anaconda on Mon Nov  6 11:06:38 2023

#

# Accessible filesystems, by reference, are maintained under '/dev/disk/'.

# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.

#

# After editing this file, run 'systemctl daemon-reload' to update systemd

# units generated from this file.

#

UUID=147464a6-27ee-477f-8dfd-0c157a0aabc7 /                       xfs     defaults        0 0

UUID=b7107860-5e6f-4ff5-abb3-880ab7e6caca /boot                   xfs     defaults        0 0

UUID=1396ecbf-4d87-4e65-898b-28048721d05e none                    swap    defaults        0 0

/dev/cdrom /media/cdrom iso9660 defaults 0 0

第4步:修改以下配置网址,使用“dnf install httpd -y”命令检查软件仓库是否已经可用。

[root@localhost yum.repos.d]# sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*

[root@localhost yum.repos.d]# sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

[root@localhost yum.repos.d]# yum makecache

[root@localhost ~]# dnf install httpd -y

完成配置仓库,安装源相当于官方应用商店,三方源就相当于官方以外的应用商店。

这里要着重聊一下,通过阿里系的也可以配置仓库:阿里云镜像

##配置Linux软件安装源

curl -s -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

##配置第三方源epel

curl -s -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo