Linux常用命令(三)

上节回顾:

  在前面篇博文中主要讲了Linux中常用的一些命令的基本用法。具体内容见Linux常用命令(一)Linux常用命令(二)。这一节主要介绍Linux中VIM文本编辑器的主要用法。

  

  补充Linux学习常用小技巧:

  1. 善于查看man help等帮助文档
  2. 利用好Tab键  自动补全
  3. 掌握好一些快捷键:

    ctrl + c(停止当前进程)

    ctrl + z  挂起当前进程,放后台

    ctrl + r(查看命令历史) history

    ctrl + l(清屏,与clear命令作用相同)

    方向箭头  上 下 可以查看执行过的命令

    ctrl + a  行首

    ctrl + e 行尾

    ctrl + k  清除  

    ctrl+ w 清除单词

VIM文本编辑器

  vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大。只有命令,没有菜单。

VIM工作模式

    

  

  命令模式:又称一般模式

  编辑模式:又称底行模式,命令行模式

插入命令

命令

作用

a

在光标后附加文本

A(shift + a)

在本行行末附加文本   行尾

i

在光标前插入文本

I(shift+i)

在本行开始插入文本 行首

o

在光标下插入新行

O(shift+o)

在光标上插入新行

定位命令

命令

作用

:set nu

设置行号

:set nonu

取消行号

gg

G

到第一行

到最后一行

nG

到第n行

:n

到第n行

 

保存和退出命令

命令

作用

:w

保存修改

:w new_filename

另存为指定文件

:w >> a.txt

内容追加到a.txt文件中 文件需存在

:wq

保存修改并退出

shift+zz(ZZ)  

快捷键,保存修改并退出

:q!

不保存修改退出

:wq!

保存修改并退出(文件所有者可忽略文件的只读属性)

删除命令

命令

作用

x    

删除光标所在处字符   nx 删除光标所在处后n个字符

dd

删除光标所在行,ndd删除n行

:n1,n2d

删除指定范围的行(eg :1,3d   删除了123这三行)

dG

删除光标所在行到末尾的内容

D

删除从光标所在处到行尾

复制和剪切命令

命令

作用

yy、Y    

复制当前行

nyy、nY

复制当前行以下n行

dd   

剪切当前行

ndd 

剪切当前行以下n行

p、P

粘贴在当前光标所在行下  或行上

替换和取消命令

命令

作用

r

取代光标所在处字符

R(shift + r)

从光标所在处开始替换字符,按Esc结束

u

undo,取消上一步操作

ctrl+r

redo,返回到undo之前

搜索和替换命令

命令

作用

/string

向后搜索指定字符串   搜索时忽略大小写 :set ic

?string

向前搜索指定字符串

n

搜索字符串的下一个出现位置,与搜索顺序相同

N(Shift + n)

搜索字符串的上一个出现位置,与搜索顺序相反

:%s/old/new/g

全文替换指定字符串

:n1,n2s/old/new/g

在一定范围内替换指定字符串 

  

  

  % 指全文,s 指开始,g 指全局替换

  起始行,终止行s/要替换的字符串/替换的新的字符串/g    c 询问确认

    eg: :%s/ftp/yang/g    全局替换,把ftp替换为yang

    eg: :41,44/yang/lee/c   从41行到44行,把yang替换为lee,询问是否替换

    eg: :41,44/yang/lee/g   同上,不询问,直接替换

    eg: :%s//root//ROOT/g  把/root替换为/ROOT

    eg: :%s#/bin/bash#/bin/ksh/g        把/bin/bash全部替换为/bin/ksh

  使用替换命令来添加删除注释

    :% s/^/#/g 来在全部内容的行首添加 # 号注释

    :1,10 s/^/#/g 在1~10 行首添加 # 号注释

  vi里面怎么查命令??

    :!which cp

  vi里面怎么导入命令的结果?

    :r !which cp

可视化模式

  v  可视字符模式

  V(shift+v) 可视行模式,选择多行操作

  ctrl+v 可视块模式(列模式),操作列

  I或者O进入插入模式。

原文地址:https://www.cnblogs.com/zhangchao162/p/9613043.html