




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一. 学习vim编辑器l 概念及其学习的原因Vi 是Unix世界里极为普遍的全屏幕文本编辑器,VIM是它的改进版本Vi IMproved的简称,和Emacs并列成为类Unix系统用户最喜欢的编辑器。几乎可以说任何一台Unix机器都会提供这套软件。由于Vim具有代码补完、编译及错误跳转等方便编程的功能,在程序员中被广泛使用。l 最基本的操作流程1. 在命令行里运行vim 文件名.扩展名,如果文件名不存在,则新建一个空文件。输入vim test.txt进入下图所示:2.vim的工作模式:不同于一般的文本编辑器,VIM存在3种工作模式,分别是命令模式,插入模式和 VISUAL 模式。刚打开vim 时处于命令模式,按一下键盘i 则进入插入模式。注意这时的窗口左下角原本显示文件名的地方现在显示“- INSERT -”。在插入模式下我们可以像普通的编辑器那样输入文本,进行编辑。当我们想退回命令模式时按键。3.获取帮助信息:help:help subject比如想看看x命令的帮助: :help x学习vim的主要原因有:1) 所有的Unix like系统都会内置vi文本编辑器,其他的我文本编辑器则不一定会存在。2) 很多软件的编辑接口都会主动调用vi。3) vim具有程序编辑的能力,可以主动以字体颜色辨别语法的正确性,方便程序设计。4) 程序简单,编辑速度快。l Vim的基本使用方法及其相关命令vim编辑器的三种模式:一般模式、编辑模式和命令行模式。在一般模式中可以进行删除、复制和粘贴的功能,但是无法编辑文件内容。从一般模式切换到编辑模式可以按下i、I、o、O、a、A、r、R键。按下Esc键可以回到一般模式。在一般模式中输入:、/、?三个中的任意一个可以将光标移到最下面的一行。在这个模式中可以提供查找数据的操作,而读取、保存、大量替换字符、离开vii、显示行号等操作则是在此模式中完成的。需要注意的是,编辑模式与命令行模式之间是不能互相切换的。移动光标的方法:Ctrl+f:屏幕向下移动一页,相当于PageDown按键。Ctrl+b:屏幕向上移动一页,相当于PageUp按键。0或功能键Home:移动到这一行的最前面字符处。$或功能键End:移动到这一行的最后面字符处。G:移动到这个文件的最后一行。gg:移动到这个文件的第一行,相当于1G.NEnter:N为数字,光标向下移动N行。查找和替换:/word:向下寻找一个名称为word的字符串。?word:向上寻找一个名称为word的字符串。:n1,n2s/word1/word2/g:在第n1行和n2行之间寻找word1这个字符串,并且将其替换为word2.:1,$s/word1/word2/g:从第一行到最后一行寻找word1这个字符串,并且将其替换为word2.:1,$s/word1/word2/gc:从第一行到最后一行寻找word1这个字符串,并且将其替换为word2.且在替换前显示提示字符给用户确认是否需要替换。删除、复制和粘贴:x,X:在一行字中,x为向后删除一个字符(相当于Del键),X为向前删除一个字符(相当于Backspace)。dd:删除光标所在的一整行。ndd:删除光标所在的向下n行。yy:复制光标所在的一行。nyy:复制光标所在的向下n行。p,P:p为将已复制的内容在光标的下一行粘贴,P则为粘贴在光标的上一行。u:复原前一个操作。Ctrl+r:重做上一个操作。.:小数点,重复前一个操作。一般模式切换到编辑模式:i,I:进入插入模式,i为从目前光标所在处插入。I为在目前所在行的第一个非空格字符处开始插入。a,A:进入插入模式。a为从目前光标所在处的下一个字符处开始插入。A为从所在行的最后一个字符处开始插入。o,O:进入插入模式。o为在下一行插入。O为在上一行插入。r,R:进入替换模式。r只替换光标所在那个字符一次。R会一直替换光标所在字符,直到按下Esc键。一般模式切换到命令行::w:将编辑的数据写入到硬盘中。:q:离开vi.后面加!为强制离开。:wq:保存后离开。:wq!:强制保存后离开。目前主要的编辑器都有恢复功能,vim也不例外。vim是通过“保存”文件来挽回数据的。每当我们在用vim编辑时,vim都会自动在被编辑的文件的目录下面再新建一个名为filename.swap的文件。这就是一个暂存文件,我们对文件 filename所做的操作都会被记录到这个文件当中。如果系统意外崩溃,导致文件没有正常保存,那么这个暂存文件就会发挥作用。用vim编辑name.txt文件:vim name.txt在vim的一般模式下按下ctrl+z组合键,vim就会被丢失到后台执行。回到命令提示符环境后,我们模拟将vim的工作不正常中断。kill -9 %1;强制杀死制定的进程。这样导致暂存盘无法通过正常的流程结束,所以暂存文件不会消失,而是继续保留下来,当再次编辑那个文件时(输入命令vim name.txt),出现下面这种情况:O(pen for Read-Only):打开成只读文件。E(dit):用正常方式打开要编辑的文件,并不会载入暂存文件的内容。这很容易出现两个用户相互改变对方的文件的问题。R(ecover):加载暂存文件的内容。D(elete):如果你确定这个暂存文件是没有用的,则可以删除。Q(uit):不进行任何操作,回到命令行。A(bort):忽略这个编辑行为,和Q类似。需要注意的是:这个暂存文件不会应为你结束vim后自动删除,必须要手动删除。否则每次打开对应的文件时都会出现这样的提示。解决方案:第一:ctrl+z 退出后,在终端直接输入fg这样就会重新回到vim编辑界面了。然后只要正常退出就可以了。第二:ls -a 一下,会看到隐藏的.swp文件 删除了此文件即可,然后再次vim打开文件就不会出现上述界面了。l vim的功能(在命令行中输入vimtutor或者gvimtutor可以阅读,遇到问题时可以使用:help)【1】块选择这个功能可以让我们复制一个矩形区域的内容,十分方便。v:字符选择,会将光标经过的地方反白选择;V:行选择;Ctrl+v:块选择;y:复制反白的地方;d:删除反白的地方。【2】多文件编辑我们在两个或多个文件之间复制粘贴内容时,这个功能会让我们方便很多。使用命令vim name1 name2 name3.(各个文件名之间用空格隔开)可以同时打开多个文件。:n:编辑下一个文件;:N:编辑上一个文件;:files:列出目前vim打开的所有文件。【3】多窗口功能可以在一个窗口中打开多个文件。输入命令:spfilename便可以实现这个功能。如果想要在新窗口启动另外一个文件,则加入文件名。如果省略文件名,则打开的是同一个文件。其他的按键功能:Ctrl+w+j:先按下Ctrl不放,再按下w后放开所有的按键,再按下j(或向下箭头键),则光标可以移到下方的窗口;Ctrl+w+k:同上,不过光表移到上面的窗口;Ctrl+w+q:离开。【4】vim环境设置需要注意的是,vim会将i我们的以前的行为都记录下来,以方便我们操作。它保存在文件:/.viminfo中。vim常用的环境设置参数命令如下::set nu 设置行号:set nonu 取消行号:set hlsearch 设置高亮度查找:set nohlsearch 取消高亮度查找:set backup 自动备份文件:set ruler 开启右下角状态栏说明:set showmode 显示左下角的INSERT之类的状态栏:set backspace=0,1,2 设置退格键功能。为2时可以删任意字符。为0或1时仅可以删除刚才输入的字符。:set all 显示目前所有的环境参数值:set 显示与系统默认值不同的参数值:syntax on/off 是否开启依据相关程序语法显示不同的颜色:set bg=dark/light 是否显示不同的颜色色调但是我们没有必要每次使用 vim都要重新设置一次各个参数值。我们可以通过配置文件来直接规定我们习惯的vim操作环境。整体vim的设置值一般是放在/etc/vimrc中的。 我们一般不要修改这个文件。我们可以通过修改/.vimrc这个文件,如果不存在,可以手动创建。然后将我们所希望的设置值写入。例如,我们可以这样写:. vim/.vimrc. sethlsearch(注意:set前面也可以加冒号,结果一样). setbackspace=2. setruler. setshowmode. setnu. syntaxon创建并保存这个文件之后,当下次重新以vim编辑某个文件时,该文件的默认环境就是这么设置的。二.find命令l Linux下find命令在目录结构中搜索文件,并执行指定的操作。Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项很多,其中大部分选项都值得我们花时间来了解一下。即使系统中含有网络文件系统(NFS),find命令在该系统中同样有效,只有你具有相应的权限。在运行月一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。l 命令格式Linux下查找文件的命令有两个:locate和find locate命令locate这个命令是在对其生成的数据库进行遍历(生成数据库的命令:updatedb),这一特性决定了用locate查找文件速度很快,但是locate命令只能对文件进行模糊匹配,在精确度上来说差了点,简单介绍下它的两个选项:-i/查找文件的时候不区分大小写 -n/只显示查找结果的前N行 find命令find在不指定查找目录的情况下是对整个系统进行遍历查找。使用格式:find 指定查找目录 查找规则 查找完后执行的action注意:查找目录之间需要用空格分开【查找规则】1) 根据文件名查找-name/根据文件名查找(精确查找)-iname/根据文件名查找,但是不区分大小写通配符的使用:*表示统配任意的字符?表示统配任意的单个字符 表示统配括号里面的任意一个字符2) 根据文件所属用户和组来查找文件-user/根据属主来查找文件-group/根据属组来查找文件3) 根据uid和gid来查找用户find /tmp -uid 500/查找uid是500的用户find /tmp -gid 1000/查找gid是1000的文件4) -a and -o and -not的使用-a连接两个不同的条件(两个条件必须同时满足)-o连接两个不同的条件(两个条件满足其一即可)-not对条件取反的5) 根据文件时间戳的相关属性来查找文件-atime -mtime-ctime-amin-mmin-cmin所以这里atime,mtime,ctime就是分别对应的“最近一次访问时间”、“最近一次内容修改时间”、“最近一次属性修改时间”,这里的atime的单位指的是“天”,amin的单位是分钟。find /tmp -atime +5/表示查找在五天内没有访问过的文件find /tmp -atime -5/表示查找在无天内访问过的文件6) 根据文件类型来查找文件-typef/普通文件d/目录文件l/链接文件b/块设备文件c/字符设备文件p/管道文件s/socket文件7) 根据大小来查找文件-sizefind /tmp -size 2M/查找在/tmp目录下等于2M的文件find /tmp -size +2M/查找在/tmp目录下大于2M的文件find /tmp -size -2M/查找在/tmp目录下小于2M的文件8) 根据文件权限查找文件-permfind /tmp -perm 755/查找在/tmp目录下权限是755的文件find /tmp -perm +222/表示只要有一类用户(属主,属组,其他)的匹配写权限就行find /tmp -perm -222/表示必须所有类别用户都满足有写权限9) -nouser and -nogroupfind/-nogroup a nouser/在整个系统中查找既没有属主又没有属组的文件(这样的文件通常是很危险的,作为系统工程师的我们应该及时清除掉)【查找完执行的action】-print/默认情况下的动作-ls/查找到后用ls显示出来 -ok commend /查找后执行命令的时候询问用户是否要执行 -exec commend/查找后执行命令的时候不询问用户,直接执行的使用:替代查找到的文件find /tmp-atime+30exec rm rf ; /删除查找到的超过30天没有访问过文件三.grep命令Linux系统中grep命令是一种强大的文本搜索工具,全称是Global Regular Expression Print,它能在文件中搜索符合要求的文本,并把匹配的行打印出来。它的使用权限是所有用户,大多数情况下,grep命令都是配合管道符使用,以期获得 符合要求结果。它的使用方法是 grep 参数 查找条件 文件名。grep的一些参数命令:1.grep -c option file:显示文件中包含搜索内容行数,比如前面的命令表示显示 file中包含option内容的行数是几2. grep -n option flie:列出所有的匹配行,并在最前面添加行的序列数3. grep -v option file:显示文件中不包含所搜索内容的行数,这个和-c的参数正好相反4. gep -i option file:列出所搜索内容的匹配行,搜索过程中不区分大小写5. grep -l option *:列出所有包含option内容的文件的名6. grep -r option :对当前目
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年大数据金融行业当前竞争格局与未来发展趋势分析报告
- 2025年致密气行业当前发展趋势与投资机遇洞察报告
- 支部消防知识培训课件
- 2025年小学生国学知识竞赛试题库及答案
- 2025年邓小平理论知识竞赛题库附答案
- 2024年矿井机械维修技师专业技术及理论知识试题(附含答案)
- 2024年绿园区事业单位招聘考试《综合基础知识及综合应用能力》试题及答案
- 2025年陕西省宝鸡市社会工作者职业资格社会工作法规与政策预测试题含答案
- 2025道德与法治新课标测试题(二)含答案
- 摩托车发动机原理课件
- 农机设备租赁合同
- AED使用指南课件
- 公费师范三方协议书
- 2024年人教版小学数学五年级下册第三单元测试卷(含答案解析)
- 颅脑疾病CT诊断课件
- 医疗改革背景下的基层医疗卫生机构成本核算管理分析
- 第17课《昆明的雨》公开课一等奖创新教学设计
- 体育产业与赛事运营管理课件
- QCT 998-2023 汽车空调滤清器 (正式版)
- 耳鼻喉健康宣教手册课件
- GB 24542-2023坠落防护带刚性导轨的自锁器
评论
0/150
提交评论