AIX VI 操作备忘

测试环境: AIX 7.1

模式

vi编辑器包括三种模式:

  • 普通模式:浏览、复制、粘贴、删除
  • 编辑模式:插入、替换
  • 命令模式:搜索、设置、执行命令

在编辑模式/命令模式下,通过ESC返回普通模式

文件管理

命令功能模式 
vi打开vi普通 
vi file打开文件普通
view file打开文件(只读)普通
:q退出命令
:q!强制退出(不保存)命令
:wq保存并退出命令
:w保存命令 
:w file另存为命令 
m,n w filem-n行另存为命令 
:e重新打开(当前文件)命令 
:e file重新打开命令 
Ctrl-g显示文件信息普通 

光标移动

单元移动

命令功能模式 
h左移一列普通
j下移一行普通
k上移一行普通
l右移一列普通

行内移动

命令功能模式 
(n)h左移n列普通 
(n)l右移n列普通 
0行首普通 
^行首普通
$行尾普通

如,右移20列写作20l

单词移动

命令功能模式 
w下一单词词首普通
W下一单词词首(长单词)普通 
e下一单词词尾普通 
E下一单词词尾(长单词)普通 
b上一单词词首普通 
B上一单词词首(长单词)普通 

长单词:以空格(space)、制表符(tab)、回车(enter)作为分隔符
短单词:包括*()-等均视为分隔符
例如:if(a > 0) 中,长单词包括if(a>0)3个,短单词包括if(a>0)6个

跨行移动

命令功能模式 
:0首行命令
G尾行普通
:$尾行命令 
:n第n行命令

屏幕移动

命令功能模式 
ctrl-f向下一屏普通
ctrl-b向上一屏普通
ctrl-u向下半屏普通 
ctrl-d向上半屏普通 

f=forward,b=backward,u=up,d=down
%适用于大中小三种括号

搜索

命令功能模式 
/keyword搜索关键字命令
?keyword搜索关键字(逆向)命令
n重复上一次查询普通
N重复上一次查询(逆向)普通 
%(光标至于括号上)跳转到反括号普通 

/+n :正向搜索
/+N :逆向搜索
?+n :逆向搜索
?+N :正向搜索

编辑文本

插入文本

命令功能模式 
i光标位置插入普通->编辑
I行首位置插入普通->编辑 
o在当前行下插入一行普通->编辑
O在当前行上插入一行普通->编辑
a光标位置后插入普通->编辑
A行尾位置插入普通->编辑 
$a行尾位置插入普通->编辑 
s删除当前字符并插入普通->编辑 
S删除整行并插入普通->编辑 

替换文本

命令功能模式 
r替换一个字符普通->编辑
nr替换n个字符普通->编辑 
R从光标位置开始替换,直到按ESC普通->编辑 
cw修改一个单词普通->编辑
cc修改整行普通->编辑 
c0修改行首到光标位置普通->编辑 
c^修改行首到光标位置普通->编辑 
c$修改光标位置到行尾普通->编辑 
~大小写字母切换普通 

对于组合命令,可以通过ESC取消

删除、复制和粘贴

命令功能模式 
x删除光标所在字符普通
nx删除从光标位置开始的n个字符普通 
X删除光标前一字符普通 
dw删除一个单词普通 
dd删除整行普通
ndd删除n行普通 
yw复制一个单词普通 
yy复制整行普通
nyy复制n行普通 
p粘贴普通
P粘贴(光标上一行)普通 

杂项

命令功能模式 
J合并两行普通
u撤销普通
ctrl-h删除字符编辑 
.重复最后一次操作普通 

示例:逐词替换

步骤命令说明
step1/str1搜索单词str1
step2cw str2替换str1为str2
step3n继续查询str1
step4.重复替换操作
step5重复step3-4 

输入控制字符

控制字符指ASCII码中0x01-0x1F区间的不可见字符,主要用于程序控制。
在编辑模式下,输入:crtl-v,ctrl-控制字符
例如回车(0x0D)输入:ctrl-v,ctrl-m,在vi中显示为^M

命令模式

命令功能模式 
m,n !sort将m-n行排序命令 
m,n d将m-n行删除命令 
m,n s/a/b/g/将m-n行中的a替换为b命令 
  • g表示每次匹配均进行替换;无此参数时只替换第一个匹配项
  • 范围为全文件时,行号可以写为1,$或%
  • 被替换词如果包括/,可以使用其他符号代替,如 :m,n s,a,b,g
  • 在行尾追加信息时可以使用 :m,n s/$/b/g
  • 被替换词使用正则表达式匹配
命令功能模式 
:! cmd执行外部命令命令 
:set all查看全部配置项命令 
:set nu/nonu显示/取消行号命令 
:set ic/noic搜索时忽略/取消忽略大小写命令 
:set ai/noai自动缩进/取消自动缩进命令 
:set list/nolist显示控制字符/取消显示控制字符命令 


作者:烧瓶君
链接:https://www.jianshu.com/p/a41bb480478c
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值