Grep 文本三剑客 sed awk

216 阅读3分钟

Grep 文本三剑客 sed awk

配合正则表达式使用

通配符和正则的区别

通配符:匹配文件名

正则表达式:匹配文本中的内容

过滤你想要的文本 信息

用法

grep[选项]...PATTERN[FILE]...

PATTERN:正则表达式 (明确的条件 root )

选项

-i查找时 忽略条件的大小写

-v反向查找

-n显示行号

-r递归过滤文件夹中的所有文件

-o只匹配你要的东西

grep root passwd 命令 想找的内容 执行的文件

面试题 如何在一个有大量文件的文件夹中过滤出你想要的文本信息 grep -r root/data/

标准输入:你用键盘输入的字符

标准输出:屏幕上返回显示的结果

正则表达式

^以什么开头

$以什么什么结尾

空白行怎么表示?^/etc/passwd/etc/fstabgrepnbash /etc/passwd /etc/fstab grep -n 'bash' passwd grep -n '^' fstab grep -nv '^' fstab

压缩打包 Gzip gzip -9 m

Bzip2

bzip -9 m 解压缩 tar

Tar 归档 tar -xf 选项:选项有顺序要求:- 有 不加- 没有

-f 代表使用归档

-c 建立归档文件

-x 解开归档文件

-p 保留源文件权限

-v 显示归档过程,解归档过程

-C 制定解压目录

-z 代表使用gzip压缩

-j 代表使用bzip2压缩

-t 不解开归档文件 只查看归档文件中的内容

制作归档 :压缩包的名字在前,压缩的文件在后

tar -zcvf all.tar.gz passwd m 命令

Z使用gzip压缩 c建立tar归档 v显示过程 f使用tar

all.tar.gz 压缩包的名称

passwd m 代表压缩两个文件

tar -jcvf passwd.tar.bz2 passwd

tar -zxvf all.tar.gz passwd m 命令

Vim 文本编辑器 win的 office word

Vi: 一定自带

vim:升级版 需要安装 最小化安装时不带vim

vim怎么退出:

Esc 英文 :q退出 w保存 !强制

Vim三种模式

命令模式:一开始进入的模式

1.移动光标

A.一行间跳转:开头直接到末尾 end $ 末尾直接到开头

B.多行间跳转:

2.复制 yy

3.粘贴 p 粘贴到光标所在位置的下一行

4.剪切 dd 剪切#行 #dd

5.删除单个字 x

A.删除单个字母

6.撤销 一次u 撤销全部 U

7.替换模式 r 可以替换一个字符 不能加字符 只能替换 先按

8.大R 第四种模式 替换模式 你打什么一只替换你的字符

9.退出 ZZ 直接保存退出

10.查找 内容 /你要的字符 n向下 N向下 (?你要的内容)

显示行号 set nu

输入模式:对文本进行编辑 命令跳转到输入模式:

末行模式

显示所有的命令选项:set all

显示行号: set nu

关闭行号: set nonu

显示下划线:set cul

关闭下滑线:set nocul

显示隐藏字符:set list

加密:set key=你设置的密码

接触密码:set key= (什么都不要输入)

自动缩进:set ai

指定空格代替tab set ts= 一个tab=4个空格 ts=tabstop

保存:w

退出:q

强制:!

保存并退出:x 强烈不建议使用

另存为: w 加上路径 w /opt/123

把另一个文件加入到当前文件编辑: r或e 文件路径 r/etc/shadow

读取命令结果,写入当前文件中:.!命令 .!date

末行模式下查找替换

通式

范围 s/旧的字符/新的字符/修饰符0

范围

不写 默认光标当前行

#,# 某一行到某一行 #代表数字

%代表全文

s 命令查找 search /代表分隔符

旧的字符 你要找的或者你要替换的内容(可以使用*^

新的字符

你要替换旧字符的字符

! 不区分大小写

g 整行中所有命令中的关键字都替换(如果不加g 只替换整行中的第一个)

c 修改之前问一下 确定 y

在配置文件当中 #号开头的行为注释不生效

给所有行的开头加上#

%s/^/#/g

分隔符可以使用/ # @都可以

%s#/sbin/nologin#/zz/#g