VxWorks的Host/Kernel Shell都支持两种Mode:Input Mode、Edit Mode。默认使用的C解释器就是在Input Mode下工作的,而Edit Mode又支持两种风格:vi和emacs(低一些的版本只支持vi)。vi,Linux中最常用的文本编辑器。
今天一起来看看VxWorks里的vi命令怎么用
先复习一个Shell在Input Mode里的命令: h
然后添加组件INCLUDE_SHELL_VI_MODE
启动VxWorks后,Shell默认处于Input Mode,要想进入Edit Mode,只需在Shell里点击键盘的ESC键;而在Edit Mode里点击Enter键,就回到Input Mode了
目前VxWorks 6.9里支持的vi命令有:
移动与搜索命令
代表1-9的数字,不使用则表示1
G 跳转到history的第条命令
/ 在history中,向后搜索包含字符串的命令
? 在history中,向前搜索包含字符串的命令
n 重复上一次搜索
N 反方向重复上一次搜索
k 在history中,向后搜索第条命令
- 在history中,向后搜索第条命令
j 在history中,向前搜索第条命令
+ 在history中,向前搜索第条命令
h 将光标向左移动个字符
CTRL-H 将光标向左移动1个字符
l 将光标向右移动个字符
SPACE 将光标向右移动个字符
b 将光标向左移动个单词,标点也算单词,例如"abc_def%^gh ijk@lm"为8个单词
B 将光标向左移动个由空格间隔的单词,例如"abc_def%^gh ijk@lm"为2个单词
w 将光标向右移动个单词
W 将光标向右移动个由空格间隔的单词
e 将光标移动到右侧第个单词尾部
E 将光标移动到右侧第个由空格间隔的单词尾部
f 将光标移动到右侧第一个字符,未找到则移动到行尾
t 将光标移动到右侧第一个字符,未找到则移动到行尾
F 将光标移动到左侧第一个字符,未找到则移动到行首
T 将光标移动到左侧第一个字符,未找到则移动到行首
$ 将光标移动到行尾
0 将光标移动到行首
^ 将光标移动到行首第一个非空格字符
插入命令
a 在光标字符后切换到Input Mode
A 将光标移动到行尾并切换到Input Mode
c SPACE 删除光标位置字符并切换到Input Mode
cl 删除光标位置字符并切换到Input Mode
s 删除光标位置字符并切换到Input Mode
cw 从光标位置删除到当前单词尾部并切换到Input Mode
cc 删除整行并切换到Input Mode
S 删除整行并切换到Input Mode
c$ 从光标位置删除到行尾并切换到Input Mode
C 从光标位置删除到行尾并切换到Input Mode
i 在光标字符前切换到Input Mode
I 将光标移动到行首并切换到Input Mode
R 切换到Input Mode并且新输入字符覆盖原有字符
编辑命令
另外还有一些控制命令
CTRL+U 删除整行并切换到Input Mode
CTRL+D 自动补全当前命令,如有多个,则全部列举
CTRL+W 自动补全当前命令,如有多个,则全部列举
Tab 自动补全当前命令
Enter 提交当前命令并切换到Input Mode
CTRL+L 再次输入当前行
CTRL+X 重启
是不是有点多?那就先记住这几条
这正是:
Shell文本可编辑,进入vi很容易。
多个命令不好记,先用k键应应急。
我是泰山,专注VX 14年(+10个月)!
欢迎关注VxWorks567,
一起学习,共同进步!