关于awk:Linuxawk命令介绍

引言Awk是一种用于高级文本处理的通用脚本语言,其次要用作报告和剖析工具,与大多数其余程序性编程语言不同,Awk是数据驱动的,也就是说须要定义一组针对输出文本要执行的操作,而后其获取输出数据,对其进行转换,而后将后果发送到规范输入。 语法awk [ -F fs ] [ -v var=value ] [ 'prog' | -f progfile ] [ file ... ]参数-F fs: 将输出字段分隔符设置为正则表达式fs。-v var=value: 在执行awk程序之前,将值赋值给变量var。'prog': awk程序。-f progfile: 指定文件progfile,其中蕴含要执行的awk程序。file ...: 由指定的awk程序处理的文件。示例示例文件example.txt文件内容如下: Bucks Milwaukee 60 22 0.732 Raptors Toronto 55 24 0.707 76ers Philadelphia 51 31 0.622Celtics Boston 33 33 0.598Pacers Indiana 30 34 0.585输入example.txt的第3个字段。 awk '{ print $3 }' example.txt# 60# 55# 51# 33# 30应用正则表达式匹配出以R结尾的组。 awk '/^R/ { print $1,$2,$3,$4 }' example.txt# Raptors Toronto 55 24应用BEGIN以及END输入在解决记录之前与之后执行的操作,处理过程为输入第二个字段蕴含Tor的组。 ...

February 28, 2023 · 1 min · jiezi

关于awk:超有用的-Linux-Unix-awk-命令示例

awk 是一种脚本语言,用于解决或剖析文本文件。或者咱们能够说,awk 命令次要用于依据列或字段或一组列对数据进行分组,它次要用于以有用的形式报告数据,它还应用 Begin 和 End 块来解决数据。 awk 名声在外,然而很少有人晓得它的违心是什么,awk 代表 “Aho, Weinberger, and Kernighan”,又见伯格系列,如果有一天中国人的工具用人名来命名会是啥样子? 根本语法# awk ‘pattern {action}’ input-file > output-file咱们先创立一个蕴含以下数据的输出文件 $ cat awk_fileName,Marks,Max MarksRam,200,1000Shyam,500,1000Ghyansham,1000Abharam,800,1000Hari,600,1000Ram,400,1000(1) 打印所有行默认状况下,awk 打印文件的所有行,示例如下 $ awk '{print;}' awk_fileName,Marks,Max MarksRam,200,1000Shyam,500,1000Ghyansham,1000Abharam,800,1000Hari,600,1000Ram,400,1000备注: 在 awk 命令中 {print;} 用于打印所有字段及其值。 (2) 只打印特定的字段在 awk 命令中,咱们应用 $ (美元) 符号后跟字段号来打印字段值。 咱们只打印字段 2 和字段 3,应用选项 -F,指定逗号为字段分隔符。 $ awk -F "," '{print $2, $3;}' awk_fileMarks Max Marks200 1000500 10001000800 1000600 1000400 1000(3) 打印与模式匹配的行打印蕴含单词 Hari 或 Ram 的行,示例如下 ...

February 24, 2023 · 1 min · jiezi