导航:首页 > 编程系统 > linuxawk计算器

linuxawk计算器

发布时间:2021-04-21 17:12:29

『壹』 linux中,如何使用awk计算一个文本(只有一行)中有多少个单词呢

gawk '{print $1\n}' filename |wc -l
这个事把文件每个单词打印一行,然后通过wc进行行计数。原理简单,可行。

『贰』 Linux中awk命令正确的求最大值,最小值,平

|test.txt文件内容:
9
11
35
21
42
118

求最大值:

awk 'BEGIN {max = 0} {if ($1+0 > max+0) max=$1} END {print "Max=", max}' test.txt
Max= 118

求最小值版:

awk 'BEGIN {min = 65536} {if ($1+0 < min+0) min=$1} END {print "Min=", min}' test.txt
Min= 9

求和:

cat test.txt|权awk '{sum+=$1} END {print "Sum= ", sum}'
Sum= 236

求平均值:

cat test.txt|awk '{sum+=$1} END {print "Avg= ", sum/NR}'
Avg= 39.3333

『叁』 在linux 下编写awk脚本计算每个人的平均成绩及所有人的平均成绩

1)总分:awk 'END {print ($2+$3+$4+$5)/4}' score
说明,第一行,如NUM,math在做数值运算中,做0计算的。
各个成绩记录在文件 score中。
2)计算各个学生的成绩:
示例计算3241的平均成绩,awk '{if ($1=="3241") print ($2+$3+$4+$5)/4}' score

『肆』 linux系统下awk语言计算占比问题

输入文件造为:


2016-7-26 tcp_mis 200
2016-7-27 tcp_mis 100
2016-7-28 tcp_mis 300
2016-7-29 udp_mis 400
2016-7-30 udp_mis 500
2016-7-31 udp_mis 600


脚本逻辑没有管第一列日期,只管了第二列类型:

cat1.txt|awk'{sum=sum+$3;if($2=="tcp_mis")tcp_sum=tcp_sum+$3;}END{percent=tcp_sum/sum;printf("allsum:%d.tcp_missum:%d,percent%.2f.
",sum,tcp_sum,percent);}'


输出

all sum:2100.tcp_mis sum:600,percent 0.29.

『伍』 linux shell 计算排序awk,sort OR uniq!

是这样吗:

[seesea@UC ~]$ cat file
1 2 3 2
1 2 4 2
1 4 7 2
1 4 8 2
1 3 5 2
1 3 6 2
[seesea@UC ~]$ awk '{count[$1" "$2]++; for(i=3; i<=NF; ++i) sum[$1" "$2,i]+=$i} END{for(i in count) { printf i; for(j=3; j<=NF; ++j) {printf OFS sum[i,j]/count[i]} print "" }}' file
1 2 3.5 2
1 3 5.5 2
1 4 7.5 2

『陆』 如何在Linux中使用awk命令

awk实例
1、cat /etc/passwd|awk -F: '{print $1}'
2、linux的awk一般都是,/bin/awk -> gawk
3、awk ‘/abc/’ file.txt 显示文件中包含abc行。类似grep abc a.txt
4、awk ‘{print NR,NF,$1,$NF,}’ file.txt按空格分隔列,显示当前记录号、域数和每一行的第一列和最后一列。
-F参数可以设置分割参数,例如按:分割
awk -F: ‘{print $1}’ /etc/passwd
或者cat file|awk -F “|” ‘{print $1}’
5、awk编程语言
cat v.txt|awk ‘{print length($1)}’
6、awk中使用NR和FNR,一般在awk处理多个文件时,NR==FNR才有意义
NF 当前记录中的字段数。
NR 当前记录数。
FNR同NR,但相对于当前文件。
awk ‘{print NR,FNR}’ test.txt test2.txt
awk ‘{if(NR==FNR){a[FNR]=$1;}else{print $1,a[FNR]}}’ b.txt a.txt
7、打印奇数行与偶数行
awk ‘NR%2’ test.txt
awk ‘!(NR%2)’ test.txt
8、杀死tomcat的stop.sh脚本
#!/bin/sh
ps -ef| grep tomcat |grep -v grep | awk ‘{print $2}’ |xargs kill -9
9、打印前7列
cat a.txt|awk ‘{NF=7}1’ >> b.txt
tail -f access.log|awk ‘NF=7′ OFS=’\t’ >> b.txt
cut -d”,” -f3-6 urfile

『柒』 Linux 里面命令行打开计算器 怎么输入




linux命令行计算器












详细文档请 man bc

在windows下,大家都知道直接运行calc,(c:windowssystem32calc.exe),可以打开计算器。

注:

calculate vt.&vi.
计算;calculator n. 计算器。calc就是这个计算的简写。
Ca在化学中是代表钙元素,calcium
钙(20号元素,符号Ca)。两者有什么联系呢?
calculate 来自calculus,原义是做算术运算的小石子,是calx(石灰石)的小称。


那么在linux系统下,有无与windows下calc.exe类似的计算器呢?


下面总结linux下的三个命令,来介绍一下linux下的计算方法:


1)bc
bc在默认的情况下是个交互式的指 令。在bc工作环境下,可以使用以下计算符号:
+ 加法
- 减法
* 乘法
/ 除法
^ 指数
% 余数
如:
#
bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation,
Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
3+6
<=加法
9
4+2*3<=加法、乘法
10
(4+2)*3<=加法、乘法(优先)
18
4*6/8
<=乘法、除法
3
10^3
<=指数
1000
18%5<=余数

3+4;5*2;5^2;18/4
<=一行输入多个计算,用;相隔。
7
10
25
4
quit <=退出

# bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation,
Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
scale=3
<=设小数位
1/3
.333
quit

以上是交互的计算,那到也可以 不进行交互而直接计算出结果。

A.用echo和|法,如:

# echo "(6+3)*2" |bc
18

# echo 15/4 |bc
3

# echo "scale=2;15/4"
|bc
3.75

# echo "3+4;5*2;5^2;18/4"
|bc
7
10
25
4

另外,
bc除了scale来设定小数位之外,还有ibase和obase来其它进制的运算。

如:

//将16进制的A7输出为10进制, 注意,英文只能大写

# echo "ibase=16;A7"
|bc
167

//将2进制的11111111转成10进制

# echo "ibase=2;11111111"
|bc
255

//输入为16进制,输出为2进制

# echo "ibase=16;obase=2;B5-A4"
|bc
10001

对于bc还有补充,在bc --help中还可以发现:bc后可以接文件名。如:

# more calc.txt
3+2
4+5
8*2
10/4
# bc calc.txt
5
9
16
2


2)expr

expr命令可不光能计算加减乘除哦,还有很多表达式,都可以计算出结果,不过有一点需要注意,在计算加减乘除时,不要忘了使用空格和转义。下
面直接用实例来介绍一下expr的运算,如:

# expr 6 +
3
(有空格)
9

# expr2 *
3
(有转义符号)
6

# expr 14 % 9
5

# a=3
# expr
$a+5
(无空格)
3+5
# expr $a +
5
(变量,有空格)
8

#
a=`expr 4 + 2`
echo $a
6
# expr $a + 3
9

另外,expr对于字串的操作(计算)也是很方便的,如:

//字串长度
#expr length
"yanggang.cublog.cn"
21

//从位置处抓取字串
# expr substr "yanggang.cublog.cn"
1 11

yanggang


//字串开始处

# expr index
"yanggang.cublog.cn" cu
13

3)dc

用dc来进行计算的人可以不多,因为dc与bc相比要复杂,但是在进行简单的计划时,是差不多的,不算难。dc为压栈操作,默认也是交互的,但
也可以用echo和|来配合打算。

如:

# dc
3
2+

p
5
4*
p
20

quit

# echo 3 2+ 4* p |dc
20

4)echo

echo用来进行回显,是周知的事。上面也配合bc来进行计算。其实echo也可以单独进行简单的计算,如:

# echo $((3+5))
8
# echo $(((3+5)*2))
16

echo还可以进行变量的计算,如:

# a=10
# b=5
# echo $(($a+$b))
15
# echo $a+$b
10+5
# echo $a+$b |bc
15

//计算前天的日期

# echo `date
+%Y%m%d`
20090813
# echo `date +%Y%m%d`-2
20090813-2
# echo `date +%Y%m%d`-2
|bc
20090811

5)AWK

awk在处理文件的时,可以进行运算,那当然也可以单单用来计算了,如:

# awk 'BEGIN{a=3+2;print
a}'
5
# awk 'BEGIN{a=(3+2)*2;print
a}'
10

Awk 支持常见的运算符, 如 + (加),- (减), * (乘), / (除), ^ 或 ** (乘方), % (取模)
等等。 此外, awk 也提供了一些常用的数学函数, 比如 sin(x), cos(x), exp(x), log(x),
sqrt(x), rand()。 使用这些运算符和函数可以直接进行一些简单的运算:

# echo | awk '{print
8+6}'

14

# echo | awk '{print
8/6}'

1.33333

# echo | awk '{print
9%5}'

4



『捌』 Linux 里面命令行打开计算机 怎么输入

下面总结linux下的三个命令,来介绍一下linux下的计算方法:

1)bc
bc在默认的情况下是个交互式的指 令。在bc工作环境下,可以使用以下计算符号:
+ 加法
- 减法
* 乘法
/ 除法
^ 指数
% 余数
如:
# bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
3+6 <=加法
9
4+2*3 <=加法、乘法
10
(4+2)*3 <=加法、乘法(优先)
18
4*6/8 <=乘法、除法
3
10^3 <=指数
1000
18%5 <=余数
3+4;5*2;5^2;18/4 <=一行输入多个计算,用;相隔。
7
10
25
4
quit <=退出

# bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
scale=3 <=设小数位
1/3
.333
quit

以上是交互的计算,那到也可以 不进行交互而直接计算出结果。
A.用echo和|法,如:
# echo "(6+3)*2" |bc
18
# echo 15/4 |bc
3
# echo "scale=2;15/4" |bc
3.75
# echo "3+4;5*2;5^2;18/4" |bc
7
10
25
4

另外, bc除了scale来设定小数位之外,还有ibase和obase来其它进制的运算。
如:
//将16进制的A7输出为10进制, 注意,英文只能大写
# echo "ibase=16;A7" |bc
167
//将2进制的11111111转成10进制
# echo "ibase=2;11111111" |bc
255
//输入为16进制,输出为2进制
# echo "ibase=16;obase=2;B5-A4" |bc
10001

对于bc还有补充,在bc --help中还可以发现:bc后可以接文件名。如:
# more calc.txt
3+2
4+5
8*2
10/4
# bc calc.txt
5
9
16
2

2)expr
expr命令可不光能计算加减乘除哦,还有很多表达式,都可以计算出结果,不过有一点需要注意,在计算加减乘除时,不要忘了使用空格和转义。下 面直接用实例来介绍一下expr的运算,如:
# expr 6 + 3 (有空格)
9

# expr 2 \* 3 (有转义符号)
6
# expr 14 % 9
5

# a=3
# expr $a+5 (无空格)
3+5
# expr $a + 5 (变量,有空格)
8

# a=`expr 4 + 2`
echo $a
6
# expr $a + 3
9

另外,expr对于字串的操作(计算)也是很方便的,如:
//字串长度
# expr length "yanggang.cublog.cn"
21

//从位置处抓取字串
# expr substr "yanggang.cublog.cn" 1 11
yanggang

//字串开始处
# expr index "yanggang.cublog.cn" cu
13

3)dc
用dc来进行计算的人可以不多,因为dc与bc相比要复杂,但是在进行简单的计划时,是差不多的,不算难。dc为压栈操作,默认也是交互的,但 也可以用echo和|来配合打算。
如:
# dc
3
2+
p
5
4*
p
20
quit

# echo 3 2+ 4* p |dc
20

4)echo
echo用来进行回显,是周知的事。上面也配合bc来进行计算。其实echo也可以单独进行简单的计算,如:
# echo $((3+5))
8
# echo $(((3+5)*2))
16

echo还可以进行变量的计算,如:
# a=10
# b=5
# echo $(($a+$b))
15
# echo $a+$b
10+5
# echo $a+$b |bc
15

//计算前天的日期
# echo `date +%Y%m%d`
20090813
# echo `date +%Y%m%d`-2
20090813-2
# echo `date +%Y%m%d`-2 |bc
20090811

5)AWK
awk在处理文件的时,可以进行运算,那当然也可以单单用来计算了,如:
# awk 'BEGIN{a=3+2;print a}'
5
# awk 'BEGIN{a=(3+2)*2;print a}'
10

Awk 支持常见的运算符, 如 + (加),- (减), * (乘), / (除), ^ 或 ** (乘方), % (取模) 等等。 此外, awk 也提供了一些常用的数学函数, 比如 sin(x), cos(x), exp(x), log(x), sqrt(x), rand()。 使用这些运算符和函数可以直接进行一些简单的运算:
# echo | awk '{print 8+6}'
14
# echo | awk '{print 8/6}'
1.33333
# echo | awk '{print 9%5}'
4

『玖』 linux用awk计算二进制文件中的数值和

awk '{if (NR < 20){for (i=2; i<18; i++){sum += $i;}}else{exit;}} END{printf "Total:%x\n", sum; }' $file

$file是你的文件名

『拾』 LINUX awk 语句 awk ' { SUM += $1 } END { print SUM }'请问这个要怎么理解,需详细

1、首抄先awk截取指定域,在日志的处理和监控中,经常会截取指定的字符来进行后续处理。如:从df -h命令中提取/目录所占百分比(监控经常会用到)。

阅读全文

与linuxawk计算器相关的资料

热点内容
国外大数据广告 浏览:775
win10微信声音怎么设置在哪里 浏览:177
计算机程序设计技术水平java 浏览:255
uml统一建模实用教程课后答案 浏览:947
3d建筑建模视频教程 浏览:774
途歌app官网下载 浏览:936
数据库保存相对路径 浏览:493
小白ppt演示控制工具 浏览:244
qq公众号更换管理员 浏览:275
js怎么替换特殊符号 浏览:791
旋转扭曲工具coredraw 浏览:467
网络继电器控制开关图 浏览:735
南宁公交app下载软件 浏览:742
企业大数据服务平台 浏览:10
ps做iphone 浏览:258
大数据思维与决策txt 浏览:56
tchartjava 浏览:589
苹果破解无线网密码的软件 浏览:299
mac系统占越来越大 浏览:201
word缓存文件恢复 浏览:799