`
df274119386
  • 浏览: 54212 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

vi 使用

阅读更多
最近心血来潮, 感觉要学点东西了, 一直想学学linux, 资料找到好多本了, 就是没开始看, 感觉在linux下面做开发挺郁闷的, vi命令好复杂, 完全不习惯. 正好碰上最近要学c++, 而开发c++的工具算gcc挺好用的吧, 索性就一起学了,  gcc, c++, vi编辑器的使用.

首先介绍vi, vi有三种模式, 末行模式

命令行模式

任何时候,不管用户处于何种模式,只要按一下键,即可使linux vi命令行模式;我们在shell环境(提示符为$)下输入启动linux vi命令,进入编辑器时,也是处于该模式下。

在该模式下,用户可以输入各种合法的linux vi命令,用于管理自己的文档。此时从键盘上输入的任何字符都被当做编辑命令来解释,若输入的字符是合法的linux vi命令,则linux vi命令在接受用户命令之后完成相应的动作。但需注意的是,所输入的命令并不在屏幕上显示出来。若输入的字符不是Vi的合法命令,Vi会响铃报警。

文本输入模式

在命令模式下输入插入命令i、附加命令a 、打开命令o、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何字符都被Vi当做文件内容保存起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模式下,按esc键即可。

末行模式

末行模式也称ex转义模式。

linux vi命令和Ex编辑器的功能是相同的,二者主要区别是用户界面。在Vi中,命令通常是单个键,例如i、a、o等;而在Ex中,命令是以按回车键结束的正文行。linux vi命令有一个专门的“转义”命令,可访问很多面向行的Ex命令。在命令模式下,用户按“:”键即可进入末行模式下,此时linux vi命令会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的提示符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令执行完后,linux vi命令自动回到命令模式。例如:

:1,$s / A / a / g

则从文件第一行至文件尾将大写A全部替换成小写a。

若在末行模式下输入命令过程中改变了主意,可按键,或用退格键将输入的命令全部删除之后,再按一下退格键,即可使linux vi命令回到命令模式下。

如果要从命令模式转换到编辑模式,可以键入命令a或者i;如果需要从文本模式返回,则按Esc键即可。在命令模式下输入“:”即可切换到末行模式,然后输入命令。

输入helloword

打开linux Terminal, 运行 vi helloword.c  , 屏幕显示如下


  $ vi helloword.c
  
  屏幕显示如下:   
  
  ~
  
  ~
  
  ~
  
  ~
  
  ~
  
  ~
  
  ~
  
  ~
  
  ~
  
  ~
  
  ~
  
  ~
  
  ~
  
  “ helloword.c” [New File]





切换成输入模式, 输入下面的c语言helloword代码,

///////////////////////////////////////////
#include <stdio.h>

/* main: generate some simple output */

int main(void)
{
printf("Hello, world.\n");
return 0;
}

///////////////////////////////////////////

注意 vi的删除命令, x或X分别为删除光标前和后的字符, ":d"为删除当前行
":x" 保存退出, 模式的切换 , 上面介绍时有提到

gcc使用

使用gcc编译helloword.c
在命令行下输入 gcc helloword.c -o helloword
会看到当前成helloword文件
输入./helloword运行程序, 即可看到输出 "Hello, word." 的字样, 整个程序完成
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics