vi 命令模式中可用的移动键:
h ---将光标向左移一个字符
j ---将光标向下移一个字符
k ---将光标向上移一个字符
l ---将光标向右移一个字符
w ---将光标向前移一个单词
b ---将光标向后移一个单词
e ---将光标移到下一个单词之后
0 ---将光标移到行首
$ ---将光标移到行末
) ---将光标移到下一句句首
( ---将光标移到上一句句首
} ---将光标移到下一段开始处
{ ---将光标移到下一段开始处
G ---将光标移到当前文档的底部
^ ---将光标移到行内非空格的第一个字符
H ---将光标移到屏幕上第一行
L ---将光标移到屏幕上最后一行
在vi 中滚动屏幕:
a 然后按回车---- 将光标所在的那一行移至屏幕顶部
z 然后按”-” ---将光标所在的那一行移至屏幕底部
z 然后按”.” ---将光标所在的那一行移至屏幕中部
Ctrl u ------向上滚动半屏
Ctrl d ------向下滚动半屏
Ctrl f ------向前滚动全屏
Ctrl b ------向后滚动全屏
Ctrl e ------向下滚动一行
Ctrl y ------向上滚动一行
vi 的文本编辑命令:
D ------从光标定位的行末删除文本
dd ----- -行删除光标定位的当前行
ndd -----n 代表即将删除的行数。例如5dd 命令不仅会把当前行删除,还会把紧随其后的4 行也删除
rc ----- -c 代表字符。光标下方的字符将被替换为r 后面的字符
R ------R 后键入的文本将改写当前文本,从光标所在位置开始,一直到按下Escape 返回命令模式为止
S ------删除当前行,并开始在当前的空白行插入文本
x ------删除光标下方的字符,并将字符右移填空
X ------删除光标前的字符,并移动字符,令光标下方的字符来填空
~ ------更改光标下方的字母的大小写
J ------将当前行和前一行连接起来,并删除因此而来的空行
vi 中的文件操作:
ZZ ----- -保存对当前文件的更改,然后退出vi
:wq -----保存对当前文件的更改,然后退出vi( 和ZZ 一样)
:w ----- -保存对当前文件的更改
:w! -----保存对当前文件的更改,如果有同名文件存在的话,就改写他
:q ----- -退出vi 。如果有未保存的更改,vi 将发出抱怨,并” 拒绝” 退出
:q! -----退出vi ,即使还有尚未保存的更改。所有未保存的更改将被丢失
:e filename -把指定文件载入vi 进行编辑。如果指定文件不存在,将创建一个新文件
:e! -----丢失所有更改,并从硬盘中重载已保存的文件
vi 中的查找和替换命令
/pattern --------pattern (样式)指代的是要查找的内容。vi 将在文件中向前查找与指定内容匹配的第一样式
/ -----------重复上一次查找,在文件中查找下一个匹配样式
?pattern --------pattern( 样式) 指代的是要查找的内容。vi 将在文件中向后查找与指定内容匹配的第一样式
? -----------重复上一次查找,在文件中查找与上一次查找内容匹配的样式
% -----------把当前光标移至匹配的圆括号或方括号。对程序员来说,该命令非常有用
:s/pattern1/pattern2 -- 用pattern2 替换当前行中与pattern1 匹配的每个内容
:%s/pattern1/pattern2– 用pattern2 替换整个文件中与pattern1 匹配的每个内容
vi 中的yank 命令
yw -------把光标当前所在的单词移到缓冲区
y$ -------把当前行及其以前的所有文本移到缓冲区
yy -------把当前行整行移到缓冲区
nyy -------n 代表打算移到缓冲区的文本的行数。例如5yy 将把当前行和紧随其后的4 行移到缓冲区
文件编码格式转换:
gbk到utf8
iconv -f gbk -t utf-8 func_login.common.php > func_login.common.php.utf8
然后 mv func_login.common.php.utf8 func_login.common.php
就将func_login.common.php从gbk转为utf8格式了