Linux常用Shell命令及Vi的使用
- 格式:doc
- 大小:91.50 KB
- 文档页数:6
Linux下的vi编辑器的简单使⽤操作⽅法vi编辑器的使⽤:vi编辑器有三种基本⼯作模式,分别是命令⾏模式、⽂本输⼊模式、末⾏模式。
1.命令⾏模式该模式是进⼊vi编辑器后的默认模式,任何时候,不管⽤户处于何种模式,按下esc键即可进⼊命令⾏模式。
在命令⾏模式下,可以输⼊vi命令来管理⾃⼰的⽂档。
此时在键盘上输⼊任何字符都被当作编辑命令,⽽不是输⼊字符。
输⼊的字符并不会在屏幕上显⽰,若是合法的vi命令,则会完成相应的动作,否则会响铃报警。
2.⽂本输⼊模式命令⾏模式下输⼊以下⼏个命令则会进⼊⽂本输⼊模式。
i: 插⼊命令,会将⽂本插⼊到光标所在位置之前I: 插⼊命令,会将⽂本插⼊到光标所在⾏的⾏⾸a: 追加⽂本命令,会将⽂本追加到光标当前位置之后A: 追加⽂本命令,会将⽂本追加到光标所在⾏的末尾o: 空⾏插⼊命令,将在光标所在⾏的下⾯插⼊⼀个空⾏,并将光标置于该⾏的⾏⾸O: 空⾏插⼊命令,将在光标所在⾏的上⾯插⼊⼀个空⾏,并将光标置于该⾏的⾏⾸c: 修改命令r: 取代命令s: 替换命令在该模式下,⽤户输⼊的任何字符都被当做⽂件内容保存起来,并显⽰在屏幕上。
3.末⾏模式命令⾏模式下,⽤户按下:键即可进⼊末⾏模式,此时vi会在显⽰窗⼝的最后⼀⾏显⽰⼀个:作为末⾏模式的说明符,等待⽤户输⼊命令。
多数⽂件管理命令都是在此模式下执⾏的。
末⾏命令执⾏完后,vi会⾃动回到命令⾏模式4.vi⽂本的删除命令:vi编辑器可以在编辑模式和命令⾏模式下删除⽂本。
命令⾏模式下,vi常⽤删除命令x 删除光标处的字符。
若在x之前加上⼀个数字n,则删除从光标所在位置开始向右的n个字符。
X 删除光标前⾯的字符。
若在X之前加上⼀个数字n,则删除从光标前⾯那个字符开始向左的n个字符。
dd 删除光标所在的整⾏。
前⾯加上数字n,则删除当前⾏以及其后的n-1⾏。
D 或 d$ 删除从光标所在处开始到⾏尾的内容。
d( 删除到上⼀句开始的所有字符d) 删除到下⼀句开始的所有字符d{ 删除到上⼀段开始的所有字符d} 删除到下⼀段开始的所有字符d0 删除从光标前⼀个字符开始到⾏⾸的内容dw 删除⼀个单词。
linux vi用法
LinuxVI编辑器是一个非常强大的文本编辑器,通常用于在命令行界面中编辑文本文件。
它不仅可以编辑文本文件,还可以用于编写脚本,记笔记等。
以下是一些常用的Linux VI编辑器用法:
1. 打开文件:在终端中输入vi filename,即可打开一个名为filename的文件。
2. 插入模式:按下i键即可进入插入模式,此时可以开始编辑文本。
3. 保存并退出:按下Esc键,输入:wq即可保存并退出文件。
4. 放弃修改退出:按下Esc键,输入:q!即可放弃修改并退出文件。
5. 查找字符串:在命令模式下输入/字符串,即可查找当前文件中包含该字符串的位置。
6. 替换字符串:在命令模式下输入:s/old/new/g,即可将所有的old替换为new。
7. 删除一行:在命令模式下输入dd即可删除一行。
8. 撤销操作:在命令模式下输入u即可撤销上一次操作。
9. 复制粘贴:在命令模式下将光标移动到需要复制的文本上,按下yy即可复制,将光标移动到需要粘贴的位置,按下p即可粘贴。
总之,Linux VI编辑器是一个非常实用的编辑器,它的功能非常强大,掌握一些基本的用法,可以提高工作效率。
学习 Linux,101: 使用 vi 编辑文件简介:了解如何使用 vi 编辑器,这款编辑器在大部分UNIX® 和Linux® 系统中都存在。
本文提供的材料可以帮助您准备 Linux 系统管理员认证 LPI 101 考试,也可以作为一般的兴趣读物。
查看本系列更多内容关于本系列本系列教程将帮助您了解 Linux 系统管理员任务。
您还可以利用本系列文章提供的材料准备Linux Professional Institute Certification level 1 (LPIC-1) 考试。
查看我们的学习 Linux,101:LPIC-1 路线图了解本系列文章并获取每篇文章的链接。
该系列线路图随时更新并反映 LPIC-1 考试的最新(2009 年 4 月)考核目标:我们在每篇文章完成之后将其添加到该线路图中。
与此同时,您还可以在我们的LPI 认证考试准备教程中找到早期的类似材料,它们针对 2009 年 4 月以前的 LPIC-1 考核目标。
概述在本文中,您将学习 vi 编辑器的基本使用方法,这个编辑器在大部分 Linux 或UNIX 中都可以见到。
您将学习:•使用 vi 导航文档•使用基本的 vi 模型•插入、编辑、删除、复制和查找文本本文将帮助您准备 Linux Professional Institute's Junior Level Administration (LPIC-1) 考试的 103 主题下的 103.8 考核目标。
该考核目标的权值为 3。
先决条件为了从本文获得最大的收益,您应该具备基础的 Linux 知识,并且具有一个能够正常运行的 Linux 系统,以便练习本文讨论的命令。
不同版本的程序输出的结果的格式可能不同,因此您的结果可能与本文图片和清单所示的结果有所不同。
回页首使用 vi 导航文档联系 IanIan 是我们最受欢迎并且很多产的作者之一。
查看Ian 的个人资料并与他和My developerWorks 上的其他作者和读者联系。
linux shell编辑文件命令详解在Linux下,如果你需要进行文件编辑操作,那么应该使用那个命令呢?下面由店铺为大家整理了linux shell编辑文件命令的相关知识,希望对大家有帮助!linux shell编辑文件方式vi编辑器有3种基本工作模式首先需要知道vi编辑器有3种基本工作模式,分别是:命令模式、文本输入模式、和末行模式。
第一:命令行模式:该模式是进入vi编辑器后的默认模式。
任何时候,不管用户处于何种模式,按下ESC键即可进入命令模式。
在该模式下,用户可以输入vi命令,用户管理自己的文档。
此时从键盘上输入的任何字符都被当作编辑命令来解释。
若输入的字符是合法的vi 命令,则vi在接受用户命令之后完成相应的动作。
但需要注意的是,所输入的命令并不回显在屏幕上。
若输入的字符不是vi命令,vi会响铃报警。
第二:文本输入模式:在命令模式下输入命令i、附加命令a、打开命令o、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。
在该模式下,用户输入的任何字符都被vi当作文件内容保护起来,并将其显示在屏幕上。
在文本输入过程中,若想回到命令模式下,按ESC键即可。
第三:末行模式:末行模式也称ex转义模式。
在命令模式下,用户按“:”键即可进入末行模式下,此时vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的说明符,等待用户输入命令。
多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。
末行命令在执行完后,vi自动回到命令模式。
如果要从命令模式转换到编辑模式,可以键入a或者i。
如果需要从文本模式返回,则按ESC即可。
在命令模式下输入“:”即可切换到末行模式,然后输入命令。
综上,一般我们使用命令打开文件的时候,是进入到命令模式。
在命令模式下,可以切换到文本输入模式和末行模式,但是文本输入模式和末行模式之间是不可以直接相互切换了,因此文本输入模式切换到末行模式,需要先回到命令模式再切换,反之亦然。
Linux 中V(Vim)常用命令使用说明在linux发行版中vi 命令已经软链接到了vim一、vi的三种工作模式:命令模式、末行模式、编辑模式1. 末行模式命令w:(write)保存q:(quit)退出,如果没有保存不允许退出q!:(quit)强行退出,不保存退出wq:(write&quit)保存并退出x:保存并退出:e:(edit)会打开内置浏览器浏览当前目录下的文件,后面加文件名就会打开该文件:n文件名:(new)新建文件:w文件名:(write)另存为,但是仍然编辑当前文件,并不会切换文件二、打开或新建文件说明:打开一个文件,文件不存在则新建一个文件命令:vi 文件名1. 打开文件并且定位行说明:打开一个文件并且定位到指定行数,不指定行数则定位到文件末尾命令:vi 文件名+行数三、常用命令(命令模式下使用)1. 重复次数在命令模式下,先输入一个数字再跟上一个命令,可以让该命令重复执行指定次数。
2. 移动和选择2.1 移动行间移动命令:行内移动命令:行数移动命令:屏幕移动命令:段落移动命令:vi中用空行来区分段落,在程序开发过程中,通常一段功能相关的代码会放到一起(一个段落)。
括号切换命令:标记命令:2.2 选择(可视模式)可视模式下,esc可退出可视模式,还可和移动命令连用,例如ggVG能够选中所有内容。
3. 编辑操作3.1撤销和恢复撤销3.2 删除文本如果使用可视模式已经选中了一段字符,那么使用d或者x都可以删除选中字符。
删除命令可以和移动命令连用,例如3.3 复制粘贴复制粘贴是在一个文本缓冲区,没有使用系统的剪切板,所有用其他软件ctrl + c/x 复制剪切到系统的剪切板,再到vi中p粘贴是不能粘贴系统剪切板的内容的。
如果想将系统剪切板的内容粘贴到vi中,需要进入编辑模式使用ctrl + v才能将内容粘贴。
vi中的删除操作本质上就是剪切,只是没有使用p粘贴。
4. 撤销和重复4.1 缩排和重复5. 查找和替换5.1替换R命令可进入替换模式,替换完后esc退出替换模式进入命令模式替换命令的作用就是在不用进入编辑模式,对文本进行轻量级修改。
vi常用指令VI是一款非常实用的文本编辑器。
它经常被用于程序编写、文件编辑等方面。
VI的操作比较简单,只要掌握几个常用的指令,就可以轻松完成许多工作。
本文将会介绍VI的常用指令,帮助读者更好地使用VI。
一、VI的三种模式VI有三种模式:命令模式、插入模式和底行模式。
在命令模式下,我们可以用各种命令对文本进行编辑。
在插入模式下,我们可以直接输入文本。
在底行模式下,我们可以执行一些特定的命令,如保存文件、退出VI等。
二、进入/退出VI进入VI的方法有两种:一个是使用命令vi,另一个是使用命令vim。
两者的效果是一样的,只是vi是VIM的简称。
退出VI的方法有两种:一个是在命令模式下输入命令:wq!表示保存并退出;另一个是在命令模式下输入命令:q!表示不保存并退出。
三、命令模式下的常用指令1.移动光标:我们可以使用h、j、k、l命令将光标左移、下移、上移、右移。
2.插入文本:在命令模式下,我们可以按下i、a、o等指令,进入插入模式,开始编辑文本。
3.删除文本:我们可以使用命令x、dd等来删除文本。
其中x命令会删除光标所在位置的一个字符,而dd命令可以删除一整行。
4.复制/粘贴文本:我们可以使用命令y、p等来复制/粘贴文本。
其中y命令会复制选定的文本,而p命令会将文本粘贴到光标下方。
5.替换文字:我们可以使用命令:s/old/new/g,将old替换为new,其中g表示全局匹配。
6.查找替换:我们可以使用命令:%s/old/new/gc,将old替换为new,其中gc表示全局匹配并要求确认。
四、底行模式下的常用指令1.保存文件:我们可以在命令模式下输入命令:w,保存当前的编辑内容。
2.查找文本:我们可以在命令模式下输入命令:/text,用于查找text。
按下n可以继续查找下一个匹配项。
3.退出VI:我们可以在命令模式下输入命令:q,表示退出VI。
4.保存并退出VI:我们可以在命令模式下输入命令:wq,用于保存当前的编辑内容并退出VI。
常用Shell命令及Vi的使用1.Vi 全屏幕编辑器的使用2.grep 找出满足条件的行3.cut 摘取指定的列4.sort 对文件按指定的关键字段排序5.uniq 删除文件中重复的行6.wc 对文件进行字符数、单词数、行数统计7.diff 比较两个文件的不同之处8.who/w 列出当前登录在线用户的详细情况vi全屏幕编辑器的使用•vi的特点、及几个基本概念•vi的三种模式,及之间的切换•光标移动指令•删除指令•复制、粘贴指令•查找及替换指令•其他指令vi简介Vi是“Visual”的意思,几乎所有的UNIX系统都提供这个程序。
它是一种全屏幕编辑程序。
这里的屏幕是文本对外显示的窗口,在这个窗口内,用户可以自由地移动光标,对文本中的字符、字、行、段进行插入、删除和修改等操作,并通过上下移动窗口,对文件的全部内容进行操作。
vi的特点、及几个基本概念1.由行编辑器发展而来2.双手不必离开键盘就可完成所有操作3.不依赖于鼠标和功能键(home/end/pageup/pagedown/...)4.在命令模式下,所有的输入都当作命令看待5.在文本输入模式下,所有的输入都当作文本vi的三种模式,及模式间切换•命令模式到文本模式切换:i a o I A Oi (insert) 在光标所在位置插入(当前字符前)a (append)在光标所在位置后插入(当前字符后)I 在当前行首插入A在当前行尾插入o (open) 在光标所在当前行的下面插入新行O 在光标所在当前行的上面加入新行扩展命令模式(长命令模式)在命令模式下输入:,在屏幕下方出现:提示符,等待用户输入其他指令。
•vi的启动在shell命令状态下输入vi filename(打开现有文件,或编辑新文件)vi•vi的退出在扩展命令模式下输入:wq 文件存盘退出:q! 不存盘强制退出:wq newfilename 存为新文件newfilename光标移动指令•对应方向键移动h 左移一字符k 上移一行j 下移一行l 右移一字符•按单词单位移动b 移到词首 e 移到词尾w 移到下一词首•按行单位移动0 移到行首$ 移到行尾nG 移到第n行G 移到最后一行•按页单位移动^ f 下卷一屏^ b 上卷一屏^ d 下卷半屏^ u 上卷半屏删除字符指令•x 删除当前光标处的字符•X 删除当前光标前一个字符•d<n> 删除从当前开始的n个字符•d0 删除从当位置到行首的所有字符•d$ 删除从当位置到行尾的所有字符•dw 删除从当位置到下一个词首的所有字符•dG 删除从当位置到文档末的所有字符•d1G 删除从当位置到文档开始处的所有字符•dd 删除当前行复制与粘贴指令•复制yanky<n>复制从当前位置开始的n个字符yw 复制从当前位置到下一词首y0 复制从当前位置到行首的所有字符y$ 复制从当前位置到行尾的所有字符yG 复制从当前位置到文档末的所有字符y1G复制从当前位置到文档开始的所有字符yy复制整行•粘贴putp 将复制的内容粘贴到光标后P 将复制的内容粘贴到光标前查找和替换指令查找/string 从光标当前位置向下查询字符串string?string 从光标当前位置向上查询字符串stringn 重复上次向下查找N 重复上次向上查找查找和替换指令替换指令(扩展命令模式下)(1):1,$s/oldstr/newstr/g在全文范围用newstr替换oldstr(2):n,ms/oldstr/newstr/g在第n行到第m行内用newstr替换oldstr说明参数g后可跟参数c,表示在替换前需用户确认。
如::1,20s/jason/Jason/gc在1到20行内用Jason替换jason,并每次替换要求用户确认。
其他指令•u undo 撤消上一次操作•U 撤消对当前行的所有操作,恢复到原来状态。
•:e newfilename 不退出vi,编辑其他文件•:r otherfilename 在光标位置读入其他文件•:!cmd 执行shell命令cmd•:r!cmd 执行shell命令并把运行结果插入当前光标处•:n,m w filename 把第n到m行的内容存入文件字符串查找(grep)•grep在文件中搜索含有特定字符串模式的行,并显示出来。
命令格式:grep [-clnvy] <pattern> <files>-c只显示符合字符串模式的总行数-l只显示符合字符串模式的文件的文件名-n显示符合字符串模式的行的行号-v显示不含字符串模式的行-y不区分字母的大小写字符串模式中的特殊符号:.匹配任一字符*匹配任意多个字符^匹配行首$匹配行尾[]匹配[]中的任意字符[^ ]与不在[]内的任意字符匹配字符串查找(续)% grep ab myfile搜索myfile文件,显示所有包含字符串ab的行。
% grep ‘^ab’ myfile搜索myfile文件,显示所有以字符串ab开头的行。
% grep –v ‘^ab’ myfile搜索myfile文件,显示所有不以字符串ab开头的行。
% grep –l ‘[hH]ello’ *显示当前目录下所有包含字符串hello/Hello的文件的文件名。
grep在命令输出中的过滤作用:配合管道命令|可过滤掉不需的信息:ls –l | grep “^d” 只显示出当前目录下的目录who | grep tty1 把当前在tty1控制台登录的用户列出ps –A | grep xinetd 只显示当前系统运行的守护进程xinetd摘取指定的列(cut)•从文本每行中摘取指定字符或字段•通过列位置方式:指定列位置cut -c1-20 a.txt从文本a.txt的每行中提取头20个字符•通过字段位置方式,默认分割符为TAB,可通过-d参数后跟单字节符来指定分割符。
cut -d: -f1,3,4 /etc/passwd抽取passwd文件的用户名,uid,gid对比:g r e p抽取满足条件的行,c u t抽取指定的列按关键字排序(sort)•对文本按指定的字段排序,若没指定字段,则把整行作为关键字。
默认按字典序排序,对于数字字段可指定按数字序排序。
•字段的分割默认为tab,可通过-t参数指定其他单字节符号。
•sort -t: +0 -1 /etc/passwd按字段用户名排序•sort -t: +2n -3 /etc/passwd对第三个字段uid按数字序排序,•可同时对多个字段排序sort -t: +6 +0 -1 /etc/passwd先对shell名排序,然后按用户名排序•说明:指定对第m个字段的方法是: +(m-1) -m•字段后跟的n表示按数字序•参数-r 表示逆序输出sort -r -t: +6 +0 -1 /etc/passwd删除文本中重复的行(uniq)•用于比较输入流中相邻的两行,若重复则删除重复的行,通常与sort配合。
•如列出当前系统注册用户使用的shellcut -d: -f7 /etc/passwd | sort | uniq文件字数统计(wc)•统计文本文件中字符、单词、行出现的次数•-l统计行数•-w统计单词数•-c统计字符数•wc -l /etc/passwd,统计用户个数•wc -w a.txt 统计文件中出现的单词数综合例子有如下国家信息文件country.txt,包含以下字段:国家名、首都、所在洲、使用语言,字段间用“,”分割。
England,Landon,Europe,EnglishChina,Beijing,Asia,ChineseJapan,Tokyo,Asia,JapaneseAmerica,W.S.DC,America,EnglishFrance,Paris,Europe,Franch......1、统计国家信息文件中出现的所有语言cut -d, -f4 country.txt | sort | uniq2、统计亚洲国家所使用的语言数量grep …Asia‟ country.txt | cut -d, -f4 | sort | uniq | wc -l3、统计欧洲国家讲英语的国家数量grep …Eurpoe‟ country.txt | grep …English‟ | wc -l比较两个文件不同(diff)比较两个文本文件的差别,通常用于修改过文件同原备份文件的比较格式:diff file1 file2输出格式:n1 a n3,n4 file1的第n1行后插入了file2的第n3到n4行n1,n2 c n3,n4 file1的第n1到n2行改变成了file2的第n3第n4行n1,n2 d n3 file2的第n3行后删除了原属于file1的第n1到n2行每个输出命令后面列出了两个文件不同点的行,用“<”“>”区分“<”表示后面的输出内容为file1的“>”表示后面的输出内容为file2的。