Linux文件操作四剑客常用命令

find查找命令

find命令说明

  • Linux find命令用来在指定目录下查找文件
  • 任何位于参数之前的字符串都将被视为欲查找的目录名
  • 如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件
-name            # 按文件名查找
-size            # 按文件大小查找
-perm            # 按权限查找
-mtime n         # 查找n天内修改内容的文件
-mmin n          # 查找n分钟内修改内容的文件

find常用查找方法在这里插入图片描述

grep指令

grep指令说明

  • grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来
  • grep搜索成功,则返回0,如果搜索不成功,则返回1,如果搜索的文件不存在,则返回2
^linux         # 以linux开头的行
$php           # 以php结尾的行
.              # 匹配任意单字符
.+             # 匹配任意多个字符
.*             # 匹配0个或多个字符(可有可无)
[0-9a-z]       # 匹配中括号内任意一个字符
[abc]          # 表示匹配一个字符,这个字符必须是abc中的一个。
(linux)+       # 出现多次Linux单词
(web){2}       # web出现两次以上
\              # 屏蔽转义  

grep常用查找方法
在这里插入图片描述
grep其他用法
在这里插入图片描述

sed流编辑器,过滤和替换文本

sed指令说明

  • sed 命令将当前处理的行读入模式空间进行处理,处理完把结果输出,并清空模式空间
  • 然后再将下一行读入模式空间进行处理输出,以此类推,直到最后一行
  • 还有一个暂存空间,可以暂时存放一些处理的数据,但不能直接输出,只能放到模式空间输出
  • 这两个空间其实就是在内存中初始化的一个内存区域,存放正在处理的数据和临时存放的数据
-n         # 只列出sed处理的哪一行内容
-e         # 直接在sed模式上进行sed动作编辑
-f         # 直接将sed动作写在一个文件内
-r         # 让sed指令支持扩展的正则表达式

sed指令参数详解

'''1. 常用选项 '''
-n   # 不打印模式空间
-e   # 执行脚本、表达式来处理
-f   # 执行动作从文件读取执行
-i   # 修改原文件
-r   # 使用扩展正则表达式

'''2. 常用命令 '''
s/regexp/replacement/  # 替换字符串
p    # 打印当前模式空间
P    # 打印模式空间的第一行
d    # 删除模式空间,开始下一个循环
D    # 删除模式空间的第一行,开始下一个循环
=    # 打印当前行号
a \text    # 当前行追加文本
i \text    # 当前行上面插入文本
c \text    # 所选行替换新文本
q          # 立即退出 sed 脚本
r          # 追加文本来自文件
w filename # 写入当前模式空间到文件
!          # 取反、 否定

'''3. 常用地址 '''
$              # 匹配最后一行
/regexp/       # 正则表达式匹配行
number         # 只匹配指定行
addr1,addr2    # 开始匹配 addr1 行开始,直接 addr2 行结束
addr1,+N       # 从 addr1 行开始,向后的 N 行
addr1,~N       # 从 addr1 行开始,到 N 行结束

sed常用方法
在这里插入图片描述

awk指令

awk指令说明

  • awk是一种编程语言,用于在linux下对文本和数据进行处理
  • awk的处理文件和数据处理方式是逐行扫描,寻找到匹配的行,并在这些行上进行你想要的操作
  • 如果没有指定处理动作,则把匹配的行显示到屏幕上
//              # 匹配代码块,可以是字符串或正则表达式
{}              # 命令代码块,包含一条或多条命令
$0              # 表示整个当前行
$1              # 每行第一个字段
NF              # 字段数量变量
NR              # 每行的记录号,多文件记录递增
/[0-9][0-9]+/   # 两个或两个以上数字
/[0-9][0-9]*/   # 一个或一个以上数字
-F'[:#/]'       # 定义三个分隔符
FNR             # 与NR类似,不过多文件记录不递增,每个文件都从1开始
\t              # 制表符
\n              # 换行符
FS              # BEGIN时定义分隔符
RS              # 输入的记录分隔符, 默认为换行符(即文本是按一行一行输入)
~               # 匹配,与==相比不是精确比较
!~              # 不匹配,不精确比较
==              # 等于,必须全部相等,精确比较
!=              # 不等于,精确比较
&&             # 逻辑与
||              # 逻辑或
+               # 匹配时表示1个或1个以上

awk常用指令
在这里插入图片描述
awk基本语法
在这里插入图片描述

更详细的操作指令点这里

发布了75 篇原创文章 · 获赞 62 · 访问量 4636

猜你喜欢

转载自blog.csdn.net/weixin_45139342/article/details/104976047