复习_vim笔记续

三、vim的暂存文件、救援恢复与开启警告

1、暂存文件:

   在使用vim编辑时,vim会在与被编辑的文件的目录下,在建立一个名为.filename.swp的文件。当对filename文件的操作都会保存在.swp文件中,如果系统突然关机了等,编辑的文件却还没来得及保存,那么可以通过.swp文件补救。

 

接下来模拟通过.swp文件救援咱们的文件

 

[root@server1 vitest]# vim man.config ##在一般模式下按下ctrl + z组合键

 

[1]+  Stopped                 vim man.config

##使用ctrl + z组合键将其打入后台,也就是说,man.config仍然在后台被vim打开,但是我们可以在终端执行其他的操作

[root@server1 vitest]#

[root@server1 vitest]# ls -al

total 32

drwxr-xr-x   2 root root  4096 Aug 16 21:53 .

drwxrwxrwt. 10 root root  4096 Aug 16 21:50 ..

-rw-r--r--   1 root root  4940 Aug 16 21:52 man.config

-rw-r--r--   1 root root 16384 Aug 16 21:53 .man.config.swp ##这就是.swp暂存文件

[root@server1 vitest]#

#########模拟vim突然被关闭,而man.config没有被正常保存退出############

[root@server1 vitest]# kill -9 %1 ##模拟vim突然停止工作

 

[1]+  Stopped                 vim man.config

[root@server1 vitest]# ls -al

total 32

drwxr-xr-x   2 root root  4096 Aug 16 21:53 .

drwxrwxrwt. 10 root root  4096 Aug 16 21:50 ..

-rw-r--r--   1 root root  4940 Aug 16 21:52 man.config

-rw-r--r--   1 root root 16384 Aug 16 21:53 .man.config.swp ##.swp文件还存在

[1]+  Killed                  vim man.config ##vim  man.config这个进程被杀掉了

[root@server1 vitest]#

###############再打开man.config文件#########################

[root@server1 vitest]# vim man.config

 

E325: ATTENTION ##错误代码

Found a swap file by the name ".man.config.swp"  ##说明存在一个暂存文件.man.config.swp

          owned by: root   dated: Wed Aug 16 21:53:25 2017  ##这个文件的所有者为root

         file name: /tmp/vitest/man.config ##这个暂存文件属于那个实际的文件

          modified: no ##是否修改

         user name: root   host name: server1.example.com ##用户名,主机名

        process ID: 2422 ##进程号,即当时打开这个文件时的进程号

While opening file "man.config"

             dated: Wed Aug 16 21:52:43 2017

 

####说明发生这个错误的两个主要原因与解决方案

(1) Another program may be editing the same file.

    If this is the case, be careful not to end up with two

    different instances of the same file when making changes.

Quit, or continue with caution.

#####

可能有其他人或程序在同时编辑这个文件

解决方法:

a、找到另外那个程序或人员,请他将该vim的工作结束

b、如果只是查看文件内容而不修改,则可以选择下面的[O]选项

#####

 

(2) An edit session for this file crashed.

    If this is the case, use ":recover" or "vim -r man.config"

    to recover the changes (see ":help recovery").

    If you did this already, delete the swap file ".man.config.swp"

to avoid this message.

#####

在前一个vim的环境中,可能因为某些不知名原因导致vim中断(常见)

常见解决办法:

a、如果之前对文件的vim操作没有保存,可以选择[R]键,此时,vim会载入.swp文件里 的内容,然后你就可以保存之前未保存的操作,然后需要删除当前目录下的.swp文件, 否则,当再次打开时,还会出现像这样的警告

b、如果你确定这个.swp文件没有用,那么可以选择[D]按键将这个文件删除,然后vim 会重新载入man.config文件,并且会产生一个新的.swp文件

#######

Swap file ".man.config.swp" already exists! ##告诉你.man.config.swp已经存在

####底下是告诉你你可以进行的操作###########

[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort:

 

[O]pen Read-Only:以只读形式打开这个文件,但是无法编辑。

(E)dit anyway:以正常的形式打开文件,不会载入.swp文件里的内容,但是如果有另一个人也在编辑这个文件,那么这个文件就会出现问题,所以不建议使用这种方式。

(R)ecover:载入.swp文件里的内容。当你没来得及保存对文件的操作时,可以选择这种方式。注意,当保存退出之后,记得要把.swp文件删除。

(D)elete it:如果确定这个.swp文件是没用的,可以选择这个按键将其删除,然后就可以正常打开文件了。

(Q)uit:直接退出,不进行任何操作。

(A)bort:忽略,与Q类似。

################################################

 

四、vim的额外功能

vim 的用法与vi一模一样

可以给vim定义一个别名 alias vi=‘vim’

这样当执行vi命令时,实际上就是在执行vim这个命令。

 

###################################################################3

1、那么当我们用vim打开文件时会出现哪些内容呢

[root@server1 vitest]# vim man.config

 

 

如图所示:

(1)由于man.config是系统规划的配置文件,因此vim会进行语法检验,所以看到的大部分内容都是蓝色,而且都是注释行,非注释行则是其他的颜色;

(2)左下角显示该文件的属性,文件名,共多少行,共多少个字符;

(3)右下角出现的1,1表示光标所在的位置为第一行第一个字符,top表示目前这个画面是整个文件的最前面部分。如果阅览到文件的三分之一,会显示30%

2、区块选择

v 字符选择,会将光标经过的地方反白选择

V 行选择,会将光标经过的行反白选择

ctrl + v 区块选择,可以用长方形的方式选择资料

y 将反白的地方复制起来

d 将反白的部分删除

 

例如:将server复制到每一行的后面

 

将光标移到第一行 host 那个 ,然后按下 [ctrl]-v ,左下角出现区块示意字样:-- VISUAL BLOCK --

 

将光标移劢到最底部,此时光标移劢过癿区域会反白!如下图所示:

 

然后按下y进行复制,此时反白的区块会消失,并且会提示有六行的块被复制

 

然后将光标移动到第一行的最右边,并且可以使用编辑模式向右按两个空格(也可以不用,看你自己需要),回到一般模式后再按下p,就可以进行粘贴了

 

###############################################################33

2、多档案编辑

意义:当我们需要将一个文件里的一部分内容复制到另一个文件里时,不能使用yy/p复制粘贴命令,我们需要打开两个终端,然后两个vim分别打开两个文件,然后用鼠标进行圈选,然后才可以进行复制粘贴。这样就会增加我们的工作量,这个时候用多档案编辑就方便多了。

 

使用的按键:

:n 编辑下一个文档

:N 编辑上一个文档

:files 列出目前这个vim的开启的所有文件

 

例如:将上面的文件里的IP复制到另一个文件里

(1)通过[ [root@server1 vitest]# vim hosts ip ]命令使一个vim开启两个文件

 

(2)使用 :files查看编辑的文件有哪些

 

绿色的是说按enter键回到一般模式

(3)回到一般模式,在第一行输入 4yy 复制四行

 

(5) vim 环境下输入 :n 会来到第二个编辑档案,亦即 ip ;

 

此时进入了ip文件,可以看到这是一个新文件

(6)按下p进行粘贴

 

(7)在任意一个文件里按下 :wq 进行保存退出

 

###########################################################33

 

3、多窗口功能

多窗口中使用的按键:

:sp [filename] 开启一个新窗口,如果有加filename,表示在新窗口开启一个新的文件, 否则表示在新窗口开启同一个文件

ctrl + w + v 横向分屏

ctrl + w + s 纵向分屏

ctrl + w + c 删除分屏

ctrl + w + j /向下键 先按下ctrl不放,在按下w,然后全部放开,然后再按下j或向下键, 则光标就可以移到下方的窗口

ctrl + w + k/向上键 方法同上,光标移动到上方的窗口

ctrl + w + q 也就是 :q 命令,即离开当前窗口

####################################################################

 

4、vim的环境设定与记录:~/.vimrc,~/.viminfo

~/.viminfo:文件自动产生,这个文件记录的是,你曾用过vim所进行的操作,例如,当你用vim再某一个文件里搜寻过某一个字符串时,那个字符串会高亮显示,当你下一次再进入这个文件时,那个字符串同样的高亮显示,光标也会停留在上一次停留的地方。这就是~/.viminfo文件的功劳。你可以在这个文件里查找你在vim里所做过的操作。

 

~/.vimrcvim环境设置文件。这只是设置某个用户的vim,如果想要设置所有用户的vim,可以编辑/etc/vimrc文件。

vim 的环境设定参数:

set nu/nonu 设定/取消行号

set hlsearch/nohlsearch high light search 高亮度搜寻

set autoindent/noautoindent 是否自动缩排

set tabstop=4 设定tab键的缩进统一为4

set mouse=a 设定鼠标可以操作光标位置

set background=dark 设定背景颜色

set backup 是否自动储存备份文件?一般是 nobackup , 如果设定backup 的话,那么当你更动任何一个文件时,则源文件会被另存   成一个 档名为filename~ 的文件。 举例来说,我们编辑 hosts , :set backup ,那么当更动 hosts ,在同目录下, 就会产生 hosts~ 文件名的档案,记录原始的 hosts 档案内容

set ruler 是否显示右下角的状态设定值

set showmode 是否显示--INSERT--等字样

set backspace=(012) 删除字符。当 backspace 2,就是可以删除任意值;0 1 ,仅可删除刚刚输入的字符, 而无法删除原本就已经存   在 的文字

set all 显示目前设定的所有环境参数值

set 显示与系统默认值不同的设定参数, 一般来说就是你有自行变 动过的设定参数

syntax on/off 是否依据程序相关语法显示不同颜色

set bg=dark/light 可用以显示不同的颜色色调

######################################################################3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于计算机专业的学生而言,参加各类比赛能够带来多方面的益处,具体包括但不限于以下几点: 技能提升: 参与比赛促使学生深入学习和掌握计算机领域的专业知识与技能,如编程语言、算法设计、软件工程、网络安全等。 比赛通常涉及实际问题的解决,有助于将理论知识应用于实践中,增强问题解决能力。 实践经验: 大多数比赛都要求参赛者设计并实现解决方案,这提供了宝贵的动手操作机会,有助于积累项目经验。 实践经验对于计算机专业的学生尤为重要,因为雇主往往更青睐有实际项目背景的候选人。 团队合作: 许多比赛鼓励团队协作,这有助于培养学生的团队精神、沟通技巧和领导能力。 团队合作还能促进学生之间的知识共享和思维碰撞,有助于形成更全面的解决方案。 职业发展: 获奖经历可以显著增强简历的吸引力,为求职或继深造提供有力支持。 某些比赛可能直接与企业合作,提供实习、工作机会或奖学金,为学生的职业生涯打开更多门路。 网络拓展: 比赛是结识同行业人才的好机会,可以帮助学生建立行业联系,这对于未来的职业发展非常重要。 奖金与荣誉: 许多比赛提供奖金或奖品,这不仅能给予学生经济上的奖励,还能增强其成就感和自信心。 荣誉证书或奖状可以证明学生的成就,对个人品牌建设有积极作用。 创新与研究: 参加比赛可以激发学生的创新思维,推动科研项目的开展,有时甚至能促成学术论文的发表。 个人成长: 在准备和参加比赛的过程中,学生将面临压力与挑战,这有助于培养良好的心理素质和抗压能力。 自我挑战和克服困难的经历对个人成长有着深远的影响。 综上所述,参加计算机领域的比赛对于学生来说是一个全面发展的平台,不仅可以提升专业技能,还能增强团队协作、沟通、解决问题的能力,并为未来的职业生涯奠定坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值