linux编辑跳到⾸⾏,vim编辑器的使⽤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<linux系统vim编辑器
#!/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
#以上语句为编辑成功后选择是否执⾏或调试脚本.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论