1/2x÷2/3=6

如果本题有什么不明白可以追问,如果满意请点击右下角“采纳为满意回答”
如果有其他问题请采纳本题后,另外发并点击我的头像向我求助,答题不易,请谅解,谢谢。
O(∩_∩)O,记得采纳,互相帮助

你对这个回答的评价是?


· 醉心答题,欢迎关注

如果本题有什么不明白可以追问,如果满意记得采纳
如果有其他问题请采纳本题后另发点击向我求助,答题不易,请谅解,谢谢。

你对这个回答的评价是?

下载百度知道APP,抢鲜体验

使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。

  awk 是一种很棒的语言,它适合文本处理和报表生成,其语法较为常见,借鉴了某些语言的一些精华,如 语言等。在 linux 系统日常处理工作中,发挥很重要的作用,掌握了 awk将会使你的工作变的高大上。 awk 是三剑客的老大,利剑出鞘,必会不同凡响。

  awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入(stdin)、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk有很多内建的功能,比如数组、函数等,这是它和C语言的相同之处,灵活性是awk最大的优势。

  其中 pattern 表示 AWK 在数据中查找的内容,而 action 是在找到匹配内容时所执行的一系列命令。花括号({})不需要在程序中始终出现,但它们用于根据特定的模式对一系列指令进行分组。 pattern就是要表示的正则表达式,用斜杠括起来。

  • -F fs   fs 指定输入分隔符(可指定一个或多个),fs可以是字符串或正则表达式

$n : 当前记录的第n个字段,比如n为1表示第一个字段,n为2表示第二个字段。
$0 : 这个变量包含执行过程中当前行的文本内容。
ARGC : 命令行参数的数目。
ARGIND : 命令行中当前文件的位置(从0开始算)。
ARGV : 包含命令行参数的数组。
ERRNO : 最后一个系统错误的描述。
FIELDWIDTHS : 字段宽度列表(用空格键分隔)。
NR : 表示记录数,在执行过程中对应于当前的行号
FNR : 同NR :,但相对于当前文件。
FS : 字段分隔符(默认是任何空格)。
IGNORECASE : 如果为真,则进行忽略大小写的匹配。如:IGNORECASE=1表示忽略大小写
NF : 表示字段数,在执行过程中对应于当前的字段数。 print $NF打印一行中最后一个字段 OFMT : 数字的输出格式(默认值是%.6g)。 OFS : 输出字段分隔符(默认值是一个空格)。 ORS : 输出记录分隔符(默认值是一个换行符)。 RS : 记录分隔符(默认是一个换行符)。 RSTART : 由match函数所匹配的字符串的第一个位置。 RLENGTH : 由match函数所匹配的字符串的长度。 SUBSEP : 数组下标分隔符(默认值是34)。

 我们以passwd文件来操作。操作之前先备份好,使用备份的passwd文件操作

# 这里可以使用“,”将打印的多个条件分隔,打印的效果会自动有空格。如果使用的是$1 $2,里边是用空格,那打印出来的第一列和第3列会挨在一起 # 使用制表符打印出信息

1)只查看passwd文件(100内)第20到第30行内容。(面试)

4)通过-v 设置变量

# 8s代表8个space \n回车换行 %- 后面的-表示前面不空格,不加的话前面也会有8个空格
# 因为这里是打印的$1和$4,所以前面格式输出的有两个值:%-8s和%-10s

 6)过滤第一列大于2、等于2、第一列大于2且第2列等于'Are'

# 需注意,这里不能使用单=号,会被认为是赋值。判断是否等于要使用双等号==

NF:字段数  NR:行号  FNR:文本行号(文件计数的行号)

FS:记录是以什么为分隔符  RS:默认分隔符(\n)  FILENAME:当前文件名  

OFS:输出记录分隔符(输出换行符),输出时用指定的符号代替换行符

ORS:输出记录分隔符(默认值是一个换行符)

8)输出行号(行条数NR)及文件行号(FNR)

# $0 在这里是打印文件所有内容
 
# 注意这里的$前后都加了空格,也可以不加空格,但是格式会比较紧凑
 

10)使用正则,字符串匹配。匹配第2列包含“th”字符,并打印出第二列和第四列

~ 表示模式开始。// 中是模式。!~表示模式取反,不匹配搜索的行

  对于每个输入行, awk 都会执行每个脚本代码块一次。然而,在许多编程情况中,可能需要在 awk 开始处理输入文件中的文本之前执行初始化代码。对于这种情况, awk 允许您定义一个 BEGIN 块。

  因为 awk 在开始处理输入文件之前会执行 BEGIN 块,因此它是初始化 FS(字段分隔符)变量、打印页眉或初始化其它在程序中以后会引用的全局变量的极佳位置。
  awk 还提供了另一个特殊块,叫作 END 块。 awk 在处理了输入文件中的所有行之后执行这个块。通常, END 块用于执行最终计算或打印应该出现在输出流结尾的摘要信息。

  • END {处理完所有的行后要执行的语句 }
  • {处理每一行时要执行的语句}

1)通过脚本查看输出的效果

# 注意上面使用的bash

5)查询某个文件字节大小

 6)经典:查看服务器的连接状态

我要回帖

更多关于 63,26,7,0,-1,-2,-9 的文章

 

随机推荐