概述
Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口,它接收用户输入的命令并把它送入内核去执行。Shell脚本是指命令或者应用程序不在命令行直接执行,而是通过一个程序文件来执行。熟练掌握Shell脚本非常重要,专业的郑州云计算学习课程都会重点讲解Shell脚本知识,今天千锋郑州老师就给大家分享Linux下使用Shell处理文本时最常用的工具。
1、find(文件查找)
linux下面的find指令用于在目录结构中搜索文件,并执行指定的操作。它提供了相当多的查找条件,功能很强大。在不指定查找目录的情况下,find会在对整个系统进行遍历。使用find,你可以依据文件类型、文件名进行查找,也可以根据时间、文件大小、权限、用户或组进行查询。
按类型搜索:
find . -type d -print //只列出所有目录
-type f 文件 / l 符号链接
按时间搜索:
-atime 访问时间 (单位是天,分钟单位则是-amin,以下类似)
-mtime 修改时间 (内容被修改)
-ctime 变化时间 (元数据或权限变化)
按大小搜索: w字 k M G
寻找大于2k的文件
find . -type f -size +2k
按权限查找:
find . -type f -perm 644 -print //找具有可执行权限的所有文件
按用户查找:
find . -type f -user weber -print// 找用户weber所拥有的文件
2、grep(匹配过滤)
Linux系统中grep命令是一种强大的文本搜索、查找过滤工具,,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。grep格式:grep [选项] [模式] [文件...],它在一个或多个文件中搜索满足模式的文本行。
常用的grep选项有:
-c 只输出匹配行的计数。
-i 不区分大小写(只适用于单字符)。
-h 查询多文件时不显示文件名。
-l 查询多文件时只输出包含匹配字符的文件名。
-n 显示匹配行及行号。
-s 不显示不存在或无匹配文本的错误信息。
-v 显示不包含匹配文本的所有行。
3、sed(数据替换)
sed是一个很好的文件处理工具,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作。sed命令行的基本格式为:
sed option 'script' file1 file2 ...
sed option -f scriptfile file1 file2 ...
sed编辑命令的格式为:
/pattern/action
其中pattern是正则表达式,action是编辑操作。
常用的sed命令有:a、c、i 、h、H、g、G、l、p、q、r、!、s、g、w、x、y等,常用选项有-e(进行多项编辑)、-n(取消默认的输出)、-f(指定sed脚本的文件名)。
4、awk(文本处理)
awk是一种样式扫描和文本处理语言,最基本功能是在文件或者字符串中基于指定规则浏览和抽取信息。相对于sed常常用于一整行处理, awk则比较倾向于一行当中分成数个"字段"(区域)来处理, 默认的分隔符是空格键或tab键。awk还支持C语法,可以有分支条件判断、循环语句等,相当于一个小型编程语言。awk脚本结构如下:
awk ' BEGIN{ statements } statements2 END{ statements } '
awk工作方式分为三步:1)执行begin中语句块;2)从文件或stdin中读入一行,然后执行statements2,重复这个过程,直到文件全部被读取完毕;3)执行end语句块。
除了以上几种,常见的Linux Shell文本处理工具还包括xargs、sort、uniq、tr、cut、paste、wc等。如果你想了解更多郑州云计算学习入门知识点或者最新技术热点,可以关注“千锋郑州校区”微信公众号,想要参加培训班的同学还可以来千锋郑州云计算培训班体验长达两周的免费试听!
最后
以上就是开心微笑为你收集整理的shell 输出数据入文本_郑州云计算学习入门之Linux Shell文本处理工具的全部内容,希望文章能够帮你解决shell 输出数据入文本_郑州云计算学习入门之Linux Shell文本处理工具所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复