linux编辑跳到首行,vim编辑器的使用

本文详细介绍了Vim编辑器的命令模式、编辑模式和末行模式的使用方法,包括文本操作、移动命令、查找替换、多文件编辑和窗口分屏等高级功能。此外,还分享了一个名为vim.sh的脚本编辑工具,该工具能自动添加首行信息、检查语法错误,并提供执行或调试脚本的选择。通过这个脚本,用户可以提升Vim的编辑体验和工作效率。
摘要由CSDN通过智能技术生成

1.命令模式:当你在终端中输入“vim 文件名”就进入了命令模式,在命令模式下用户输入的

任何字符都被Vi当作命令加以解释执行

从命令模式转换到编辑模式的方法如下:

i,I:插入,在当前光标所在处前方插入(i) 在当前光标所在行首插入(I)

a,A:在当前光标所在处后方插入(a)在当前光标所在行尾追加(A)

o,O:在当前光标所在行下方打开一个新行(o)在当前光标所在行上方打开一个新行(O)

在一般模式下移动快捷方式:

h 左移动

j 下移动

k 上移动

l 右移动

w 跳到单词的词首

e 跳到单词的词尾(先跳到自己的词尾,再跳到后一个单词的词尾)

b 跳到前一个单词的词首(先跳到自己的词首,再跳到前一个词首)

^ 跳到本行的第一个非空白字符上

$ 跳到绝对行尾

G(跳到文件的最后一行),nG(跳到文件的第n行)

翻屏方法:

翻一个满屏:ctrl+f(后翻) ctrl+b(前翻)

翻半屏:ctrl+d(后翻) ctrl+u(前翻)

删除

x:删除光标所在处字符,跟数字组合

dd:dd删一行 n dd 删n行

修改:

c

复制和粘贴:

y 复制 yy复制一行 3 yy 复制三行

p 粘贴 在当前光标下行粘贴 (p) 在当前光标上行粘贴 (P)

u撤销上一次的修改

ctrl r 撤销撤销(把撤销操作撤销掉)

. 表示redo (把上个操作重复执行)

在vim中有一种可视模式,可以让你对一个文本块的整体进行命令操作。

例如你可以用高亮显示出一个文本块,然后用d命令删除这个文本块。这种

可视模式与其他的编辑相比的一个好处是你可以在改动以前看到你的操作

对于所编辑的文件产生的影响。

进入可视化模式:

V命令进入的行可视模式

v命令进入的字符可视模式

移动文本:

dd p (先删再粘)

2.编辑模式

在文本输入模式下,按Esc键,即回到命令模式

3.末行模式

在命令模式下,用户按“:”键即可进入末行模式下,多数文件管理命令都是在此模式下执行的

:10,100 d(删除10-100行)

:.,$-1 d(当前行到倒数第二行)

退出:

:q

:q!

:x,或:wq或ZZ (保存退出)

查找替换

/pattern 向后搜索字符串pattern

?pattern 向前搜索字符串pattern

n 下一个匹配(如果是/搜索,则是向下的下一个,?搜索则是向上的下一个)

N 上一个匹配(同上)

:%s/old/new/g 搜索整个文件,将所有的old替换为new

:%s/old/new/gc 搜索整个文件,将所有的old替换为new,每次都要你确认是否替换

一次打开多个文件:

:next (打开下一个文件)

:prev (打开上一个文件)

:first (打开第一个文件)

:last (打开最后一个文件)

分隔窗口:

ctrl+ w,s:水平分隔窗口

ctrl+w (用箭头在窗口间跳转)

定制vim的工作特征:

:set nu (给行编号)

:set unnu(撤销编号)

写在/etc/vimrc, ~/.vimrc里则永久有效

:set ai 自动缩进

:set noai(关闭自动缩进功能)

set sm(显示哪个括号跟哪个括号匹配)

set nosm(关闭功能)

写在家目录~/.vimrc中就可以自动使用了

syntax on(打开高亮功能)

syntax off(关闭高亮功能)

vim +n file(打开文本编辑器并使光标处于第n行)

vim +/redhat rc.sysinit (光标处于第一次出现redhat的行首)

vim -O(一次打开多个文件,并垂直分割)

vim -o (一次打开多个文件,并水平分割)

vimtutor (进入vim教程)

------------------------------------------------------------------------------------------------

附: 脚本编辑脚本vim.sh 目前实现功能:

Version 0.0.1

1.可自动添加首行信息(包括:创建时间,文件名). 2.编辑完成检测是否有语法错误,并可选择是否返回编辑. 3.自动添加可执行权限(属主及属组用户).

Version 0.0.2

4.通过使用函数简化了语句.

Version 0.0.3

5.当脚本完成编辑并且检测语法没有出错,则选择是执行脚本或调试脚本,或者退出.

Version 0.0.4

6.修正BUG:

当脚本执行错误后返回值依然为0

------------------------------------------------------------------------------------------------

#!/bin/bash

#: Title:vim.sh

#: Synopsis:

#: DataTime:

#: Version: 0.0.4

#: author: Weiwei

#: Option:

find $1 &> /dev/null || cat >>$1<

#!/bin/bash

#: Title:$1

#: Synopsis:

#: DataTime: `date "+%F %T"`

#: Version: 0.0.1

#: author: Weiwei

#: Option:

EOF

vim +8 $1

function PANDUAN()

{

bash -n $1 &> /dev/null

echo $?

}

#判断脚本中的语法错误

while [ `PANDUAN $1` -ne 0 ]; do

echo "There maybe some broblems.Do you want eidt again?"

echo "(Q or q to quit)"

read B

BB=`echo $B | tr 'a-z' 'A-Z'`

if [ "$BB" = 'Q' ]; then

exit 1

fi

vim +8 $1

done

echo "All Right"

chmod ug+x $1

#以上语句为编辑脚本并检测语法错误

function LASTDO()

{

echo "What do you want to do?"

echo "Q|q for quit; T|t for test; E|e for execute"

read -p "Your command: " D

C=`echo $D | tr 'a-z' 'A-Z'`

}

#函数EXITNUM() 用于取得脚本执行后的返回值并以该返回值结束脚本

function EXITNUM()

{

EN=`echo $?`

exit $EN

}

LASTDO

while true; do

if [ "$C" = 'Q' ]; then

exit 0

elif [ "$C" = 'T' ]; then

bash -x $1

EXITNUM

elif [ "$C" = 'E' ]; then

bash $1

EXITNUM

else

echo "There is someting wrong with your Command"

LASTDO

fi

done

#以上语句为编辑成功后选择是否执行或调试脚本.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值