Linux shell编程之awk的用法
1.
awk的使用
基本功能:在文件或字符串中基于指定规则浏览和抽取信息。awk抽取信息後,才能进行其他文本操作。完整的awk脚本通常用来格式化文本文件信息。
调用方式:
1.
命令行方式
2.
将所有awk命令插入一个文件,并使awk程序可执行,然后使awk命令解释器作为脚本的首行,以便通过键入脚本名称来调用它。
3.
将所有的awk命令插入一个单独文件,然后调用。
选项说明:-F 域符号 缺省为空格
-f 指明awk脚本
2.
模式和动作
1.
任何awk语句都由模式和动作组成。在一个awk脚本中可能有许多语句。
模式部分决定动作语句何时触发及触发事件。模式缺省为执行状态。
处理即对数据进行的操作。
2.
模式可以是任何条件语句或复合语句或正则表达式。
3.
模式包括两个特殊字段BEGIN和END。
域和记录
域标识:$1,$2,…,$n。用逗号做域分隔。$0表示所有域。
打印域或所有域:print命令
注:当碰到awk错误时,可相应查找:
1.
确保整个awk命令用单引号括起来
2. 确保命令内所有引号成对出项
3. 确保用花括号括起动作语句,用圆括号括起条件语句
4.
不要忘记使用花括号
条件操作符
~ 匹配正则表达式
!~
不匹配正则表达式
内置变量:
NF:每一条记录中域名数
是将变量$PWD的返回值传入awk并显示其目录。
可以利用NF获取文件名
注:但这里指定域分隔符为/
NR:记录个数
Linux
shell编程之sed用法
1. 是一个非交互性文本流编辑器。它编辑文件或标准输入导出的文本拷贝。
2.
通过行号或正则表达式指定要改变的文本行
3.
sed不与初始文件打交道,而只与它的一个拷贝打交道,如果操作结果没有重定向到一个文件,那么将输出到屏幕。
调用方式:
a.
命令行方式
b. 将sed命令插入脚本文件中,然后调用sed
c.
将sed命令插入脚本文件中,使得脚本文件为可执行。
保存sed输出
重定向到一个新文件
>
sed中定位文本的方式
x 一行号
x,y 行号范围
/pattern/
查询包含模式的行
/pattern/pattern/ 查询包含两个模式的行
/pattern/,x
在指定行号上查询匹配模式的行
x,/pattern/ 通过行号和模式查询匹配行
x,y!
查询不包含行号x,y的行
sed编辑命令
p
打印文本
匹配元字符$前,必须使用反斜线\
= 打印行号
使用-e选项
如果既打印行号又打印匹配行,必须使用两个sed命令,并使用-e选项
附加文本
使用符号a\
,可以指定文本一行或多行附加到指定行。若不指定文本放置位置位置,sed缺省放置在每一行后面。
创建sed脚本文件
创建脚本文件,第一行为:
#!/bin/sed
-f ----注
说明sed命令解释行。脚本在这一行查找sed以运行命令,这里定位在/bin
插入文本:在指定行前面插入,它也只接受一个地址。
删除文本:d
替换命令用替换模式替换指定模式
使用sed实现的一个重要功能是在另一个系统中下载的文件中剔除控制字符。
1.
使用s/-*//g删除横线-----
2. 使用/^$s/d删除空行
3. 使用$d删除最后一行
4.
使用1d删除第一行
5. 使用awk{print $1}打印第一列
分享到:
相关推荐
Linux 主要shell命令、sed、awk使用详解 Linux 主要shell命令详解 shell 是用户和 Linux 操作系统之间的接口。Linux 中有多种 shell,其中缺省使用的是 Bash。本章讲述了 shell 的工作原理,shell 的种类,shell ...
在Linux系统中,Shell编程是系统管理员和开发者日常工作中...在压缩包中的“awk详解.txt”、“sed详解.txt”和“crontab定时器.txt”文件中,你将找到更深入的解释和实例,帮助你进一步理解和使用这些强大的Shell工具。
《刘艳涛版Linux Shell命令行及脚本编程实例详解》是一本专为Linux Shell编程初学者和进阶者设计的教程。这本书深入浅出地介绍了Linux操作系统中的Shell命令行和脚本编程技术,旨在帮助读者掌握在终端环境中高效工作...
Linux Shell 编程是从入门到精通详解的书籍,主要针对的是对Linux操作系统的程序设计感兴趣的读者。书中从基础概念出发,通过实际案例教学,对Shell编程进行详细的讲解和指导。Shell编程是一种在Unix及类Unix系统中...
Linux及Linux Shell简介、初识Linux Shell、常用Shell(Bash)命令、Shell命令进阶、Shell编程基础、Shell的条件执行、Bash循环、Shell函数、正则表达式、脚本输入处理、Shell重定向、管道和过滤器、捕获、sed和awk...
刘艳涛的《Linux Shell命令行及脚本编程实例详解》是清华大学出版社出版的一本教程,深入浅出地介绍了Shell的使用和脚本编程技巧。 **第2章 初识Linux Shell.pptx** 这一章节可能涵盖了Shell的基础概念,包括什么是...
### Sed AWK编程指南知识点详解 #### 一、引言 在计算机科学领域,文本处理是必不可少的一部分。其中,`sed` 和 `awk` 是两种非常强大的文本处理工具,广泛应用于Linux/Unix环境中。本指南将详细介绍这两个工具的...
在IT领域,Shell编程是一种非常重要的技能,尤其对于系统管理员和开发者来说,它提供了一种高效的方式来自动化Linux或Unix系统的任务。在这个主题中,我们主要关注三个强大的工具:正则表达式(Regular Expressions)...
3. **UNIX命令详解**:书中会详细介绍各种常用的UNIX命令,如ls、cd、mkdir、rm、cp、mv、grep、find、sed和awk等,这些都是编写Shell脚本时常用到的工具。理解这些命令的用法,能有效提升脚本的效率和实用性。 4. ...
### shell中常见命令与awk, sed的等价命令详解 #### 一、基本概念与工具简介 在Linux或Unix环境中,shell脚本是自动化任务处理的重要手段之一。shell提供了丰富的命令来实现各种功能,而`awk`和`sede`则是其中两个...
### Linux系统中的查询三剑客:grep、awk、sed 使用详解 #### grep 命令详解 `grep` 是一个非常强大的文本搜索工具,它可以在文本中查找指定的字符串,并且能够逐行处理文本。这使得 `grep` 成为了文本处理和数据...
本文将深入探讨Linux Shell命令行及其脚本编程的实例详解,旨在帮助读者掌握这一强大的工具。 首先,我们需要了解Linux的基础,它是开源的操作系统,提供了稳定且灵活的环境,广泛应用于服务器和开发领域。Linux ...
### Linux 下 awk 命令详解 #### 一、引言 `awk` 是一个功能强大的文本处理工具,在 Unix 和类 Unix 操作系统(如 Linux)中被广泛使用。它不仅可以进行模式匹配,还能执行复杂的文本处理任务。本文将详细介绍 `awk...
通过对"Linux下的shell编程入门.pdf"、"sed_awk正则表达式.pdf"和"AWK用法详解.pdf"的学习,你可以深入了解这些工具的高级特性,如awk的数组、函数,sed的流编辑技巧,以及更复杂的正则表达式模式。掌握这些技能,...
本文将深入探讨Linux/Unix Shell编程的核心知识点,包括基本概念、常用命令、grep、awk和sed工具的使用。 首先,Shell编程的基础在于了解不同类型的Shell,如Bash(Bourne-Again SHell)、C Shell、Korn Shell等。...
- **解析**:此命令存在错误,正确的写法应该是使用 `awk` 或 `sed` 正确地解析日期格式。例如: ```shell date +%D | sed 's/\([0-9][0-9]\)\/\([0-9][0-9]\)\/\([0-9][0-9]\)/\1 \2 \3/' ``` - **解析**:...
- **定义**:在 Linux 系统中,Shell 是用户与操作系统交互的主要方式之一,它不仅是一个命令行解释器,还是一种功能强大的编程语言。 - **用途**: - **任务自动化**:通过编写 Shell 脚本可以实现对日常任务的...