首页 > 其他分享 >awk判断整除,取绝对值,按位分割

awk判断整除,取绝对值,按位分割

时间:2022-08-19 20:14:41浏览次数:52  
标签:分割 函数 awk 绝对值 print 按位 整除

awk的内置函数不算多,没有直接的函数可以判断整除,取绝对值,按位分割,因此实现这些功能需要借助其他函数

awk判断整除

用int取整函数实现

#判断输入数字能否被3整除
echo -e "2\n5\n6\n9" | awk '{
  if (($1/3)==int($1/3)) 
    print $1,"yes"; 
  else 
    print $1,"no"
}' | cat 
#输出
#2 no
#5 no
#6 yes
#9 yes

awk取绝对值

使用sqrt开方函数实现

#输出数据的绝对值
echo -e "-5\n-3.3\n0.3" | awk '{
  print sqrt($1*$1)
}' | cat 
#输出
# 5
# 3.3
# 0.3

awk按字节分割

awk默认按照空格分割列,也可以通过-F选项指定分割符。
但是如果提取每行的第2到第5个字符就不能通过-F来指定,需要用到substr函数。

#输出每行的第2-6个字符
echo -e "this is first line\nthis is second line" | awk '{
  print substr($0,2,4)
}' | cat 
#输出
# his i
# his i

标签:分割,函数,awk,绝对值,print,按位,整除
From: https://www.cnblogs.com/liangxuran/p/16603193.html

相关文章

  • Linux命令篇 - awk 命令
    awkgawk-patternscanningandprocessinglanguage;awk:gawk是Unix中原始awk程序的GNU版本,强大之处在于可以写脚本来读取文本行的数据,然后处理并显示数据;格式:gawk[参......
  • GCD(2021陕西省赛C题)—整除分块
    目录题意题解代码原题地址:GCD题意给你l,r和k,在l到r中任意取k个数,所有取法他们对应的最大公约数一共有多少个数。1≤l≤r≤10^12,2≤k≤r-l+1题解看......
  • linux 中awk命令跳出外层循环的方法
     001、(base)root@PC1:/home/test4#lsa.txt(base)root@PC1:/home/test4#cata.txt##测试数据##1##2##34i6y#kkmma97......
  • c语言中按位操作的逻辑运算
     对于整数内部的位,有4种逻辑运算。 a、逻辑与, &,两者都为1时结果为1.b、逻辑或,  |, 两者只要一个为1结果就为1.c、逻辑异或,^,有且只有一个为1结果才为1.d、反......
  • 【Linux】ps -ef|grep -v grep|awk '{print $2}' 命令详解
    前言在Linux中使用脚本命令时,经常见到ps-ef|grep-vgrep|awk'{print$2}'这一句命令前半部分的ps-ef|grep命令,相信经常接触Linux的人肯定明白,但是后半部分的两次gr......