基本信息
文件名称:linux日志审计工具.docx
文件大小:28.21 KB
总页数:19 页
更新时间:2025-02-25
总字数:约8.27千字
文档摘要

linux日志审计工具

单独工具介绍

Find

find是一个在Linux和Unix系统中用于搜索文件系统中文件的命令行工具。它可以基于各种条件来查找文件,比如文件名、文件类型、大小、权限、所有者、修改日期等。find是一个功能强大且灵活的工具,非常适合执行复杂的搜索任务。

基本语法

find[路径][选项][操作]

路径:指定find命令开始搜索的目录路径。如果没有指定路径,find默认在当前目录及其子目录下搜索。

选项:定义搜索条件。find可以使用多个条件来精确匹配所需的文件。

操作:对找到的文件执行的操作。如果不指定操作,默认操作是打印所有找到的文件路径到标准输出。

常见选项

-name:根据文件名搜索。

-type:根据文件类型搜索(例如:-typef仅搜索普通文件,-typed仅搜索目录)。

-size:根据文件大小搜索。

-perm:根据文件权限搜索。

-user:根据文件所有者搜索。

-group:根据文件所属的组搜索。

-mtime,-atime,-ctime:根据修改时间、访问时间或状态变化时间搜索。

-exec:对搜索到的文件执行指定的命令。

示例

搜索当前目录及子目录下所有的**.txt**文件:

find.-typef-name*.txt

搜索**/home**目录下所有属于用户**bob**的文件:

find/home-typef-userbob

搜索**/var/log**目录下最近7天内被修改过的文件:

find/var/log-typef-mtime-7

删除**/tmp**目录下所有**.tmp**文件:

find/tmp-typef-name*.tmp-execrm{}\;

在这个命令中,-exec后面的{}是找到的文件名的占位符,\;表示-exec参数的结束。

搜索大小超过50MB的文件:

find/-typef-size+50M

grep

基本语法

grep[options]pattern[file...]

pattern:要搜索的文本模式。这可以是普通字符串或正则表达式。

file...:要搜索的文件名列表。如果未指定文件,grep通常会从标准输入读取。

常用选项

-i:忽略大小写。

-v:反向匹配,选择不包含指定模式的行。

-r或-R:递归搜索,查找所有文件。

-l:只打印包含匹配模式的文件名,而不是匹配的文本行。

-n:打印每个匹配行的行号。

-c:统计匹配模式的行数,而不是打印匹配的行。

-e:允许使用多个搜索模式。

-o:只输出匹配模式的部分,而不是整行。

示例

搜索文件中的文本查找文件file.txt中包含example的所有行:

grepexamplefile.txt

忽略大小写地搜索查找文件中包含example(无论大小写)的所有行:

grep-iexamplefile.txt

反向匹配选择不包含example的行:

grep-vexamplefile.txt

递归搜索在当前目录及子目录下搜索包含example的所有.txt文件:

grep-rexample*.txt

打印匹配行的行号打印file.txt内容中包含example的行及其行号:

grep-nexamplefile.txt

统计匹配行的数量获取文件中包含example的行数:

grep-cexamplefile.txt

使用多个模式查找文件中包含example或test的行:

grep-eexample-etestfile.txt

只输出匹配到的文本部分如果一行中包含多次出现的模式,只打印匹配到的模式部分,而非整行:

grep-oex[a-z]*file.txt

强行匹配

grep-asearch_patternfile

提取ip

grep-oP(?=from)(\d{1,3}\.){3}\d{1,3}your_log_file.log

-o选项告诉grep仅输出与正则表达式匹配的部分。

-P选项启用PCRE。

正则表达式**(?=from)(\d{1,3}.){3}\d{1,3}**查找from之后跟随的IP地址。

wc

基本语法

wc[OPTION]...[FILE]...

OPTION:选择计数的模式,包括行数、单词数、字符数等。

FILE:指定一个或多个文件名。如果没有指定文件或文件为-,wc会从标准输入读取。

常见选项

-l:只计算行数。

-w:只计算单词数(以空白字符分隔的字符串)。abc