VIM的基本使用及模式介绍

1. vim的使用

yum菜鸟教程

rpm菜鸟教程

vim在哪里,属于那个包

which vim
>/usr/bin/vim
which vi
/usr/bin/vi


//rpm-redhat package manager
//-f<文件>+  查询拥有指定文件的套件。
//-q 使用询问模式,当遇到任何问题时,rpm指令会先询问用户

rpm -qf /usr/bin/vim //查看安装包 enhance
rpm -qf /usr/bin/vi  //minimual

prm -qf `which yum`//结合版,使用反引号<tab上>。反引号的作用把输出当作前一条命令的输入。

//小技巧,查看一个命令是哪个软件包安装的

1.1 vim的四种模式

1.1.1 正常模式

首次进入文件

vim +行号 /etc/passwd  //可以进行固定行号写入

vim + /etc/passwd  //自动位于最后一行

复制与黏贴

2yy ----复制两行
dd------剪切
p-------黏贴

1.1.2 插入模式

(编辑模式)

进入编辑模式

  • i当前字符之前, I行首插入
  • a当前字符之后插入,A行尾插入
  • o下一行插入, O上一行插入
1.1.3 命令行模式

Command-line)

按esc—》:

  • u撤销一步,ctrl+r恢复
  • x类似于delete来使用,X = <-
  • gg首段首行。G末端行
  • $和end行尾,0和空格行首
  • /+String,按N或者小n进行查找
q!   //强制保存不退出
wq!  //强制保存退出
e!   //恢复原始继续编辑
实战1。调用外部文件或命令
//再命令行模式下,  !+命令	
如 
vim /etc/ssh/sshd_config
esc--->:  //进入命令行模式
!+ifconfig //复制想要内容再回车
//黏贴相关内容

r /etc/host  //可以将文档内容读进来
实战2。文本替换
格式:范围(1,3 1-3行   %所有行)s分隔符 旧内容 分隔符 新内容 /g(分隔符可以自定义,/g代表全部)

:1,3 s/bin/xuegod/g      //将1-3行的bin替换为xuegod

do DO
:% s/do/xuegod/g         //将全文的do替换为xuegod
:% s@do@xuegod/g        
1.1.4 可视模式

(可视块模式Visual mode)

常用于编程或修改服务器时,实战中常用来进行需要进行多行注释。批量删除或批量编辑

vim /etc/ssh/sshd_config  //配置文件

ctrl+v //进入可视块模式

向下选择要影响的行
按d会去掉注释符号
按I可以插入你想插入的符号,随后按esc即可王城插入
1.1.5自定义vim使用环境
<1>临时设置
:set nu 设置行号
:set nonu 取消行号
:noh     取消高亮
<2>永久设置环境
vim /etc/vimrc   //设置后会影响所有的用户
~/.vimrc		//在家目录下,创建一个.vimrc。这样只影响单个用户

echo "set nu" > ~/.vimrc   //等价于vim /root/.vimrc
即可每个文件都有行号
<3>同时打开上下两个文档
//这种很少用,<4>用的很多
vim -o /etc/passwd /etc/hosts //上下打开
vim -O /etc/passwd /etc/hosts //左右打开
ctrl+ww  //切换文档
:qa 						//退出
<4>♥比较文件不同
echo aaaa >> a.txt         //将aaa写入a.txt
vimdiff /etc/passwd a.txt  //可直接定位到不同的地方

2.实战1:解决上传windows中文文档乱码问题

环境:centos8 系统默认汉语

将同目录下“xxxx”上传至linux服务器,使用ssh远程连接到linux,使用vim打开显示乱码

iconv -f gb2312 -t utf8 文件名 -o dest.txt
//windows下从默认GB2312,到转为utf-8

3.实战2:解决Linux脚本导至windows上打开乱码问题

没有换行-----》因为处理回车的方式是不一样的

unix2dos 文件名   //将该文件换行格式转为windows可以识别的模式

4.实战3:恢复linux6下ext4文件系统下误删除的文件

yum install lrzsz

//ext4上系统文件误删除了,extundelete


//ext3上系统文件误删除了,ext3grep

//Windows恢复误删除的文件,
final data v2.0汉化版,easyrecovery

Linux文件系统由三部分组成:文件名,inode,block

a.txt --》inode ----》block

文件名 存放文件元数据信息 真正存放数据

//查看inode中包含的内容,会比ls -l a.txt更为详细
stat a.txt   

//block块:真正删除,即擦写完成


一旦删除应进行卸载需要恢复的文件分区及以只读方式进行挂载。

将undelete解压于USB或挂载一块单独硬盘。(要恢复的文件也放于其中)

fdisk /dev/sda //创建sda4
partx -a /dev/sda //获得新分区
ls -l /dev/sda*

若在根下删除了文件,想要恢复。

①立即断电,将磁盘以只读方式,挂载到另一个电脑进行恢复。

②把extundelete在虚拟机上提前安装好,复制到U盘中。恢复文件。恢复文件一定保存在U盘中,不能让恢复数据写到/下,那样会覆盖之前删除的文件。

mkdir /tmp/sda4  //创建挂载点
mount /dev/sda4 /tmp/sda4


umount /tmp/sda4 //删除文件后进行卸载,卸载操作时必须退出该文件夹。

//通过inode号,ls -id / 查看inode号,所以从inode 2开始。ext4文件系统的分区根目录inode的值为2。xfs分区根目录的inode值为64。

extundelete /dev/sda4 --inode 2 //从inode2开始查看被删的文件
//文件的恢复 根据inode恢复
extundelete /dev/sda4 --restore-inode 12
//文件的恢复 根据文件名恢复
extundelete /dev/sda4 --restore-file passwd
//文件的恢复 根据目录恢复
extundelete /dev/sda4 --restore-directory etc
//恢复所有文件,其在恢复文件对的时候不能创建空文件
extundelete /dev/sda4 --restore-all

安装extundelete

tar的调用

上传extundelete至linux。//bz2的包解压的时候需要 tar -j
//-jxvf,x是解析,v是显示详细信息,f是具体解压文件

//在extundelete解压文件夹下执行,源码编译三板斧

./configure  //需要一个依赖包,yum install e2fsprogs-devel,检查系统安装文件。生成Makefile文件

make -j 4      //将源码编译,使用4进程同时编译,提升速度。top按一下数字键1,可以看到cpu的个数。

make install
//install -m 777 /bin/find /opt/a.txt  用install不用cp是因为可以直接进行赋予权限

5.实战4:使用Xmanager等远程连接工具连接Linux

在Xshell中输入rz上传文件,输入sz下载文件。

用xftp传文件夹上去

可以通过Xshell调出图形界面。

gnome-terminal
firefox &
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值