前言:以下相关内容多为图片,参考链接、附上少量文字解释,以便整理脉络,以作复习巩固之用。若需详细了解,请查阅相关资料或者购买相关课程。如有错误,敬请指出,谢谢。
自己以前的一篇总结链接:linux常用命令
一、linux体系结构
回忆:
ls、cat、less、more、tail、vi/vim、
二、如何查找相关特定文件并检索文件内容
find命令是根据文件的属性进行查找
find -name '#' // 从当前目录递归查找
find / -name '#' // 从根目录递归查找,也可以指定目录查找
find / -name 'pattern' // 从根目录递归查找,按照某正则表达式
使用通配符*(0或者任意多个)。表示当前目录下查找文件名开头是字符串‘srm’的文件
find . -name ‘srm*’
find / -name 'target*' // 从根目录递归查找,按照某开头
find / -iname 'target*' // 从根目录递归查找,按照某开头并忽略大小写
grep是根据文件的内容进行查找
注:
1、grep强大在正则表达式pattern
2、grep 的 -o 和 -e 'pattern'
配合使用,先按正则的精确匹配,然后输出。-e 可以省略,只要字符串加了'pattern'
3、grep 的 -v 'pattern' 排除掉某内容
pattern正则表达式主要参数:
\: 忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
\<:从匹配正则表达 式的行开始。
\>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
. :所有的单个字符。
* :有字符,长度可以为0。
示例:
grep ‘[a-z]\{5\}' aa #显示所有包含每行字符串至少有5个连续小写字符的字符串的行
三、 管道操作 |
四、 awk 文本分析、数据抽取、统计
参考链接:Linux awk 命令
五、sed(Stream editor) 批量编辑
参考链接:Linux sed 命令
注:
不要使用 sed 的 -i 选来修改系统配置,可以先导出
sed 的 -i 选项可以直接修改文件内容,这功能非常有帮助!
举例来说,如果你有一个 100 万行的文件,你要在第 100 行加某些文字,此时使用 vim 可能会疯掉!
因为文件太大了!那怎办?就利用 sed 啊!
透过 sed 直接修改/取代的功能,你甚至不需要使用 vim 去修订!