八、Vim程序编辑器
1.作用
是一种打开文本文件的程序,可以编辑该文件以达到配置服务的功能
2.分类
(1)vi:任意版本的Linux自带的程序编辑器
(2)vim:是vi程序编辑器的加强版,通过附加一系列功能,如:字体、字体颜色、扩展接口等帮助运维人员更好对的配置服务
3.注意
Vim若在最小化镜像安装系统时,不会安装。可以使用yum install -y vim命令进行安装
4.打开文件方法
(1)格式: vim 文件名
(2)若文件已存在直接打开,若不存在会新建文件后打开
5.Vim的三种模式
(1)命令模式:又称为只读模式,在该模式下可以进行光标移动、查看等动作
(2)插入模式:编辑模式,插入、删除
(3)末行模式 :保存、退出、设置编辑环境
(4)模式切换
a.命令模式点击“i”键进入插入模式,插入模式点击“ESC”键返回命令模式,命令模式下点击“shfit+:”进入末行模式,末行模式点击“ESC”键返回命令模式
b.图:
6.命令模式
(1)常用功能键
a.yy: 复制本行
b.5yy: 复制5行
c.P: 粘贴
d.dd: 删除当前行
e.3dd: 删除3行
f./字符串: 由上到下搜索字符串
g.?字符串:由下到上搜索字符串
h.n: 显示搜索定位到下一个字符串
i.N: 显示搜索定位到上一个字符串
j.u: 撤销上一步动作
(2)配置主机名
a.主机名:Linux主机在网络上显示的名称应“见名知意”
b.配置文件: /etc/hostname
c.显示主机名名称:hostname
d.编辑主机名:
a)vim /etc/hostname
b)删除旧主机名后插入新主机名
c)保存退出
d)reboot重启
(3)配置网卡的静态IP地址
a.vim /etc/sysconfig/network-scripts/ifcfg-ens33
b.点击“i”键
c.BOOTPROTO==static:网卡类型为静态IP,动态IP为dhcp
d.在最后一行插入以下内容:
IPADDR=192.168.119.200(IP地址)
NETMASK=255.255.255.0(子网掩码)
GATEWAY=192.168.119.1(网关地址)
DNS1=8.8.8.8(域名解析服务器地址)
e.保存退出
f.重启网卡:service network restart
g.查看网卡:ip addr
7.末行模式
(1)功能命令
a.进入方法:shfit+:
b.w : 保存
c.q : 退出
d.q! : 强制退出,不保存
e.wq! : 强制保存退出
f.set nu : 显示行号
g.set nonu : 取消行号
h.数字:跳转到指定数字行
(2)注意
大部分配置文件都需要root权限,否则无法保存
8.vim异常处理
(1)制作异常环境
a. cp /etc/fstab /root
b.vim /root/fstab
c.点击dd删除某行
d.点击ctrl+z强制终止进程
e.vim /root/fstab 会有警告信息
(2)处理流程
a.点击R键后回车进行恢复
b.点击”shift+:” 正常保存退出
c.ls -a /root 查看同名的隐藏缓存文件
d.rm -f /root/.fstab.swp 删除同名缓存文件
e.vim /root/fstab 正常打开
(3)原因
a.原因1:可能其他人或程序同时在编辑该文件
b.原因2:上一个vim环境中,可能因为某些不知名原因导致vim中断(crashed)
9.shell脚本简介
(1)本质
是一种纯文本的批处理文件
(2)意义
a.自动化管理:批处理方式执行,降低维护工作量及难度
b.记录和管理系统工作:服务启动等功能
c.简单的入侵检测:通过编写脚本自动检测系统日志
d.简单数据处理:数据计算及分析
(3)创建简单的脚本
a.方法:vim 脚本文件
b.脚本扩展名: .sh
c.脚本执行过程
a)由上到下、由左到右分析执行
b)以行为单位进行执行,空行跳过
c)命令过长时使用\enter进行换行编写
d)以#开头的为注释命令,只起到增加理解的功能,不执行
d.内容分析
a)注释:
#!/bin/bash :表示该脚本使用的shell名称,不能省略
#脚本类别
#脚本功能简述
#History
#脚本编辑日期 作者 版本号等
b)命令语句
(4)执行脚本
a.方法1: bash 脚本名.sh
b.方法2:
chmod a+x 脚本名.sh(增加权限如: chmod a+x /root/hello.sh)
./脚本名.sh
(5)注意
shell scripts在系统管理及自动化执行上作用很大,但是在数据处理应用上能力有限(如:bash的运算式只识别整数的运算),且运算速度较慢,CPU占用率较大,会造成主机资源负载较高
(6)黑客帝国脚本文件实例
#!/bin/bash
#program
#install cmatrix
#history
#2019-7-22 14:29 andy Version 1.0
Wget
http://archive.ubuntu.com/ubuntu/pool/universe/c/cmatrix/cmatrix_1.2a.orig.tar.gz
tar xvf cmatrix_1.2a.orig.tar.gz
cd cmatrix-1.2a
yum install -y gcc
yum install -y ncurses-devel
./configure && make && make install
echo “Program installation complete !”