嵌入式linux下使用vi编辑SD卡上的文件内容

如果zedboard挂载的rootfs是存放在SD卡上,那么修改的文件内容不会丢失。
由于没有鼠标工具,在串口终端下,就只能使用vi工具修改。
注意:
有些版本的内核是有BUG的,所以,在vi编辑完成后,虽然我们使用“:wq”保存并退出了,但是此时不一定flush到SD卡中去了。如果此时掉电或者重启,可能内容并没改过来。
为了确保flush了,我们在退出vi后,再一次用vi打开文件看一下就可以了。

vi常用的操作如下:
(1)mode switch
cmd mode,左下角显示“-”
insert mode 左下角显示“I”
last cmd mode 左下角显示":"

I)从cmd mode 切换到 insert mode。
按下keyboard上的"i"即可。在光标位置前插入字符
另外,还有几个键也是进入insert mode用的。
“i” 在光标位置前插入字符
"o"插入新的一行,从行首开始输入
“a”在光标所在位置的后一个字符开始增加
"s"删除当前光标的字符,然后开始编辑。

II)从insert mode 切换到 cmd mode。按下keyboard上的"ESC"即可。
III)从cmd mode 切换到 last cmd mode。按下keyboard上的"SHIFT+’:’"即可。
IV)从last cmd mode 切换到 cmd mode。按下keyboard上的"ESC"即可。

(2)#vi <filename>
打开文件

(3) save and quit
# :w [<filename>]
另存为filename的文件。如果只按下“w”,那么保存当前文件。
# :wq
保存当前文件并退出。
# :q!
不保存当前文件,并强制退出。

(4)move to line
除了方向键之外,
还可以用
h, j, k, l
实现和方向键一样的移动。

另外,在cmd mode下,
输入<num>gg或者<num>G,跳转到num指定的行的行首。
在last cmd mode下,
输入“:<num>”也是一样的。

(5)copy
在cmd mode下,
I) yy
复制当前一行。
II)<num>yy
从当前行开始,复制往下的6行文字,形成文字块,放到剪贴板。
III)p
将剪贴板中的内容,粘贴到光标处。

(6)undo
在cmd mode下,按下u键。

(7)delete
在cmd mode下,
dd
删除光标所在的行
x
删除光标后面的字符
shifit+x
删除光标后面的字符

(8)总结
vi定义了大量的快捷键,一不小心就会用错。
为了规范操作,做如下约束:
(a)尽可能少的使vi停留在cmd mode中,尽可能多的使vi处于insert mode 中,或者last cmd mode 中。
(b)使用"i"键进入insert mode,尽可能不用其他方式进入insert mode
(c)尽可能使用标准方向键进行光标移动。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于嵌入式SD卡的读取和存储。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值