awk命令详解是什么?

awk命令详解是什么?,第1张

awk命令是linux下的一个文件管理命令,具体语法格式为awk [参数] [文件],通常是用于文本和数据进行处理的编程语言,awk命令主要有两个功能;awk命令可以在linux/unix下对文本和数据进行处理;awk命令支持用户自定义函数和动态正则表达式

相关介绍:

AWK是一种优良的文液首本处理工具。它不仅是Linux中也是任何环境中现有的功能最强大的数据处理引擎之一。这种编程及数据 *** 作语言(其名称得自于它的创始人AlfredAho、PeterWeinberger和BrianKernighan姓氏的首个字母)的最大功能取决于一个人所拥有的知识。

AWK提供了极其强大的功能:可以进行样式装入、流控制、数学运算符、进程控制语句甚至于内置的变量和函数。它具备了一个完整的语言所应具有的几乎所有精美特性。

实际上AWK的确拥有自己的语言:AWK程序设计语言,三位创建者已将它正式定义为“样式扫描和处理语言”。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。

最简单地说,AWK是一种用于处理文本的编程语言工具。AWK在很多方面类似于shell编程语言,尽管AWK具有完全属于其本身的语法。它的设计思想来源于SNOBOL4、sed、MarcRochkind设计的有效性语言、语言工具yacc和lex,当然还从C语言中获取了一些耐雀优秀的思想。

在最初创造AWK时,其目闹亩数的是用于文本处理,并且这种语言的基础是,只要在输入数据中有模式匹配,就执行一系列指令。

C语坦如言中用system() 执行shell命令:system("shell命令")

主要亏皮需要解释的是awk,awk主体中的语法其实与C类似,只不过其中用到了正则匹配。

格式:awk '{主体}' 文件

backbone.c就是awk要处理的文件。

$0~/^\\/\\*\\*/ :

格式:$0 ~ /正则表达式/

作销信差用:判断$0是否匹配正则表达式 ^\\/\\*\\*

含义:awk是逐行读入并处理的,$0代表整行数据;

正则表达式中 ^ 表示一行的开头,斜杠前要加转义符以免被认为是正则表达式的定界符,*表示匹配0个或多个前面的字符。

总体来讲,就是只处理backbone.c文件中匹配 /^\\/\\*\\*/ 的行与匹配 /\\*\\*\\// 的行中间的内容,并通过print打印到屏幕。

如果不你是学习linux 的,建议你放过这个问题,这个不是于C语言东东。

1) system 为调用(shell 程序, 相当于去行一个cmd,或者 bash, 然后再里面运行 awk '{if ($0~/^\\/\\*\\*/) {flag=1}if (flag==1) {print}if ($0~/行察\\*\\*\\//) {exit}}' backbone.c

1) awk 为linux 常用工具,windows上也有,不常用。文本行处理工具。单引号内 '{if ($0~/^\\/\\*\\丛烂*/) {flag=1}if (flag==1) {print}if ($0~/\\档郑茄*\\*\\//) {exit}}' 是awk 的脚本语言, backone.c 是awk要处理的文件.

打印backbone.c 文中的 /* 开头到 */中间的内容


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8183122.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存