“Linux”系统中“vi ^C ”命令是什么意思?

跳动到个非空位置 ^

vim上下翻页 vim向下翻页vim上下翻页 vim向下翻页


vim上下翻页 vim向下翻页


下面是我用vim的时候做的笔记........你可以看一下。

-------------------------------------------------------------

Linux vim 作快捷键

----------------------

1、上k下j左h右l

2、编辑i、a、s

3、视图v

4、返回普通模式 esc、ctrl+c、ctrl+[

5、执行命令 :

6、添加新页 tabnew 页面名

7、拷贝 y,p 或者 +y,+p

8、切换页面 gt、gT (go tab)

9、分割页面shift+; ->(sp 文件名 或 vs 文件名)

10、切换面板ctrl+w(表示进入切换状态)+[h,j,k,l](某一个就行)

11、保存 w

12、退出 q

13、保存退出 wq

14、全部退出 qa

15、按单词移动 w,e,b

16、单行按字符查找 f+字符(;继续 ,上一个)或者t代替f也可以

17、撤销 u

18、跳动到个非空位置 ^,跳动到行尾部$

19、跳动到个位置 0

20、按括号匹配查找 [[ , ]]

21、跳动到代码位置shift + L (尾部), H(gg头部) , M(中部)

22、跳到指定行 :120

1、正向翻页 ctrl+f

2、反向翻页 ctrl+b

3、半屏翻页 ctrl +d 、 ctrl + u

4、剪切 x, 删除 d

5、撤销 u,重做ctrl+r

6、删除区间 10,16d(删除10~16行内容,%d删除全部内容)

7、设置高亮搜索 set hls

8、忽略大小写搜索 set ic

9、一次搜索多个 | (如:/main|max|swap)

10、查看man : K

11、查看ascii码值:ga

12、自动排版 光标移动到{位置,切换到可视化模式%=

13、左右缩进:切换到可视化 <, >

14、自动补齐: ctrl+n 或者 ctrl+p

在linux中用vi编辑的时候,用“u"命令撤销过一些作,再恢复原来的作用什么命令?

用的命令是:ctrl + R

vi编辑器中有三种状态模式

1.命令模式

2.输入模式

3.末行模式

三种模式间的相互转换

vi编辑器的启动与退出

直接进入编辑环境

$ vi

进入编辑环境并打开(新建)文件

$ vi myfile

退出vi编辑环境

输入末行命令放弃对文件的修改,并退出编辑器

:q!

文件保存与另存为

保存文件

保存对vi编辑器中已打开文件的修改

:w

另存为文件

将vi编辑器中的内容另存为指定文件名

:w myfile

退出vi编辑器的多种方法

未修改退出

没有对vi编辑器中打开的文件进行修改,或已对修改进行了保存,直接退出vi编辑器

:q

保存并退出

对vi编辑器中的文件进行保存并退出vi编辑器

:wq

不保存退出

放弃对文件内容的修改,并退出vi编辑器

:q!

光标的移动和翻页作

作类型光标作键功能

光标移动h向左移动光标

l向右移动光标

k向上移动光标

j向下移动光标

翻页Ctrl + f向前翻整页

Ctrl + b向后翻整页

Ctrl + u向前翻半页

Ctrl + d向后翻半页

行内快速跳转

作键功能

^将光标快速跳转到本行的行首字符

$将光标快速跳转到本行的行尾字符

w将光标快速跳转到当前光标所在位置的后一个单词的首字母

b将光标快速跳转到当前光标所在位置的前一个单词的首字母

e将光标快速跳转到当前光标所在位置的后一个单词的尾字母

文件内行间快速跳转

命令功能

:set nu 在编辑器中显示行号

:set nonu 取消编辑器中的行号显示

1G跳转到文件的首行

G跳转到文件的末尾行

#G跳转到文件中的第#行

进入输入模式

命令功能

i在当前光标处进入插入状态

a在当前光标后进入插入状态

A将光标移动到当前行的行末,并进入插入状态

o在当前行的下面插入新行,光标移动到新行的行首,进入插入状态

O在当前行的上面插入新行,光标移动到新行的行首,进入插入状态

cw删除当前光标到所在单词尾部的字符,并进入插入状态

c$删除当前光标到行尾的字符,并进入插入状态

c^命令删除当前光标之前(不包括光标上的字符)到行首的字符,并进入插入状态

输入模式的编辑键作

按键功能

方向键进行上下左右方向的光标移动

Home快速定位光标到行首

End快速定位光标到行尾

PageUp进行文本的向上翻页

PageDown进行文本的向下翻页

Backspace删除光标左侧的字符

Del删除光标位置的字符

删除作

命令功能

x删除光标处的单个字符

dd删除光标所在行

dw删除当前字符到单词尾(包括空格)的所有字符

de删除当前字符到单词尾(不包括单词尾部的空格)的所有字符

d$删除当前字符到行尾的所有字符

d^删除当前字符到行首的所有字符

J删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容

撤消作

命令功能

u取消近一次的作,并恢复作结果

可以多次使用u命令恢复已进行的多步作

U取消对当前行进行的所有作

Ctrl + r对使用u命令撤销的作进行恢复

与粘贴作

命令功能

yy当前行整行的内容到vi缓冲区

yw当前光标到单词尾字符的内容到vi缓冲区

y$当前光标到行尾的内容到vi缓冲区

y^当前光标到行首的内容到vi缓冲区

p读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容)

字符串查找作

命令功能

/word从上而下在文件中查找字符串“word”

?word 从下而上在文件中查找字符串“word”

n定位下一个匹配的被查找字符串

N定位上一个匹配的被查找字符串

字符串替换作

命令功能

:s/old/new 将当前行中查找到的个字符“old” 串替换为“new”

:s/old/new/g 将当前行中查找到的所有字符串“old” 替换为“new”

:#,#s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”

:%s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”

:s/old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认

vi编辑器的在线帮助

使用vi在线帮助需安装的软件包

vim-common-6.3.035-3.i386.rpm

vim-enhanced-6.3.035-3.i386.rpm

软件包在RHEL5的第2张安装光盘

使用vi在线帮助的两种方法

在vi编辑器中按“F1”键

输入末行命令

如何用vi编辑和保存文件

vi是Linux终端下或控制台下常用的编辑器,基本的作方式为:

vi /路径/文件名

例如,vi /etc/fstab表示显示/etc/fstab文件的内容。使用键盘上的Page Up和Page Down键可以上下翻页;按下Insert键,可以见到窗口左下角有“Insert”字样,表示当前为插入编辑状态,这时从键盘输入的内容将插入到光标位置;再按下Insert键,左下角将有“Replace”字样,表示当前为替换编辑状态,这时从键盘输入的内容将替换光标位置的内容。编辑完内容后,按下Esc键,并输入“:wq”,然后回车就可以保存退出。

如果不想保存而直接退出,则按下Esc键后,输入“:q!”,然后回车即可。“wq”表示Write和Quit,即保存退出;“q!”表示忽略修改强行退出。

vim翻页(滚屏)时,如何保持光标在屏幕中的位置固定不变?

还没想到更简单的方法,现在只能靠写个函数来实现。

因为除了 jk 之类的命令,通常上下移动都不能保持列。(c-d c-u 这样的命令可以保持行)

所以比如还想用 c-f 向下挪,可以利用类似这样的技巧:

nnoremap :call ScrollDown()

function! ScrollDown ()

let wh = winheight(0)-2

let wl = winline()-1

if wl >= 1

exe "normal! ". wl ."k"

endif

exe "normal! ". wh ."jzt"

if wl >= 1

exe "normal! ". wl ."j"

endif

endfunction

原理是:

先求一下一屏有多高,和当前在第几行。

然后先用 k 向上挪到行。再向下挪一屏,再把当前行绘制到当前屏行。(相当于挪一屏)

再用 j 向下挪原来那么多行。(相当于恢复光标位置)

放到 vimrc 里就可以用了。向上挪改下函数中的 j k 就行了。

简单写的,可能会有 bug。

另外原来的 c-f 是能接受计数的,比如 3 是翻3屏,现在要还想实现类似的功能,函数还需要写得再复杂一些。

怎样通过Dve-C++调整程序的格式为每一行都有一个空格

说明一下,这里测试快捷键用的Devcpp的版本号为5.6.3,同时还穿插它与eclipse,Visual Studio 2013(以下简写为VS2013)的对比。废话不多说,进入主题。

1、Ctrl + 方向键左或右

光标在标记和数字之间跳转,跳转之后的光标位于标记或数字的开头处,这里的跳转会忽略掉标记或数字之间的各种符号,仅仅是在你打出的abc字母组成的标记或数字之间来回跳转。(eclipse和VS2013则不会跳过这些符号,并且它们处理字符上的跳转时并不是逐个字符地进行,而是能识别多个符号的组合符号,将其当成一个整体跳过,例如,<<,+=,==)

2、Ctrl + 方向键上或下

光标保持在当前位置不动,进行上下翻页,翻页是按一行一行进行。(同eclipse和VS2013)

3、Ctrl + Home键

跳转到当前文本的开头处。(同eclipse和VS2013)

4、Ctrl + End键

跳转到当前文本的末尾处。(同eclipse和VS2013)

5、Ctrl + d

删除光标当前所在位置上,一整行的文本。(同eclipse,但VS2013不支持)

6、Ctrl + e

光标当前所在位置上一整行的内容,并粘贴在刚才行所在的下一行上,不会覆盖原先下一行的文本,而是将的内容插入光标所在行和下一行之间。(eclipse则是激活并定位当前打开的某一个文件,而VS2013是用于某种组合键,功能不明)

7、Ctrl + PageUp

光标跳到当前代码编辑视窗的顶行文本字符之后,注意不是整个文本的首行。(同VS2013,而eclipse是在几个打开的代码文件之间进行切换)

8、Ctrl + PageDown

同上,只是在当前视窗末行的相同位置处。(同上)

9、Ctrl + m

换行,效果等同按下一次回车键(vim中也支持,eclipse中则是隐藏左右两边的工具栏,使代码文本的视窗,VS2013则是用于某个功能不明的组合键)。

10、Ctrl + /

用 // 注释掉光标当前所在行,再次按下则会取消注释。如果已经选中一个区域的文本,那么会给这块区域的每一行都加上 // 注释,再次按下会取消注释。(同eclipse,但VS2013不支持)

还有一种注释的组合键Ctrl + .(英文句点),但不能通过再次按下撤销注释,Devcpp的说明中有一个Ctrl + ,(英文逗号)用于取消注释,但实际使用后没有效果。

11、Ctrl + Space(空格键)【代码的智能提示,非常有用】

Devcpp同样可以弹出智能提示,估计很多用户都没有发现,上下键移动选取候选项,使用回车键选出所需的选项,注意用Tab键对选项没有选中效果。需要注意的是,使用这一功能,需要时不时地保存当前编辑的代码文本,只有将代码文本保存到硬盘之后(Ctrl + s),软件才会进行一次代码的文法分析,然后再按下此组合键触发需要的提示,如果有时候发现软件的智能提示没有效果,那么可尝试先保存代码,再试一次。另外,这个代码提示的功能是比较有限的,提示的内容里并不包含关键字,但自定义的函数、变量,类对象的方法、属性,结构体中包含的元素,都是可提炼出来的。(eclipse和VS2013可以用Tab键来选定选项,这两个软件的智能提示一般不需要手动按键激发,也可以设置它们的触发键 )

12、shift + 方向键左或右

从当前光标所在位置处开始,逐个字符地选取文本,字符包括字母和符号。(同eclipse和VS2013)

13、shift + 方向键上或下

从当前光标所在位置处开始,整行整行地选取文本。如果光标不在当前所在行的行首或行尾,则不会自动选中这一整行,只选取由光标划分开的那一部分。(同eclipse和VS2013)

14、Ctrl + shift + 方向键左或右

逐个单词地选取文本,但是同样会忽略掉符号,只是在单词和数字之间进行。(eclipse和VS2013中作用相同,但都不会跳过符号)

15、Ctrl + shift + 方向键上或下

会选中光标当前所在的行,然后将这个行进行上移或下移,移动作不会覆盖上下相邻的行,只是将位置进行对调。(eclipse则是在嵌套的方法之间做跳转,VS2013没有效果)

16、shift + Ctrl + g

弹出对话框,输入要跳转到的函数名。(eclipse中同样做查找,VS2013中没有效果)

17、关于Tab键对选中区域的退格

如果选中了文本区域,再按下Tab键的话,则结果就是用Tab替换掉了选中的文本,而不是将这部分整体在每一行前面加上一个Tab。(eclipse和VS2013中则是将整体都加上了Tab)

linux vim三种模式如何切换

命令模式:在Linux终端中输入“vim 文件名”就进入了命令模式,但不能输入文字。

编辑模式:在命令模式下按i就会进入编辑模式,此时就可以写入程式,按Esc可回到命令模式。

末行模式:在命令模式下按:进入末行模式,左下角会有一个冒号出现,此时可以敲入命令并执行。