Linux常用Shell命令及Vi的使用

  • 格式:doc
  • 大小:91.50 KB
  • 文档页数:6

下载文档原格式

  / 17
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

常用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 O

i (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个字符

•d0 删除从当位置到行首的所有字符

•d$ 删除从当位置到行尾的所有字符

•dw 删除从当位置到下一个词首的所有字符

•dG 删除从当位置到文档末的所有字符

•d1G 删除从当位置到文档开始处的所有字符

•dd 删除当前行

复制与粘贴指令

•复制yank

y复制从当前位置开始的n个字符

yw 复制从当前位置到下一词首

y0 复制从当前位置到行首的所有字符

y$ 复制从当前位置到行尾的所有字符

yG 复制从当前位置到文档末的所有字符

y1G复制从当前位置到文档开始的所有字符

yy复制整行

•粘贴put

p 将复制的内容粘贴到光标后

P 将复制的内容粘贴到光标前

查找和替换指令

查找

/string 从光标当前位置向下查询字符串string

?string 从光标当前位置向上查询字符串string

n 重复上次向下查找

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]

-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在命令输出中的过滤作用:

配合管道命令|可过滤掉不需的信息: