> 백엔드 개발 > PHP 튜토리얼 > Linux의 쉘 산술 연산에 대한 자세한 설명

Linux의 쉘 산술 연산에 대한 자세한 설명

小云云
풀어 주다: 2023-03-21 19:06:01
원래의
2520명이 탐색했습니다.

이 글은 주로 Linux에서의 쉘 산술 연산에 대한 자세한 설명을 공유합니다. Bash 쉘의 산술 연산의 네 가지 방법이 모두에게 도움이 되기를 바랍니다.

1. expr 외부 프로그램 사용

추가 r=`expr 4 + 5`
echo $r

주의! '4' '+' '5'

r=`expr 4 * 5` # 오류
곱셈 r=`expr 4 * 5`

2. $(( ))

r=$(( 4 + 5 ) )
을 사용하세요. echo $r

3. $[ ]

r=$[ 4 + 5 ]
echo $r

Multiplication
r=`expr 4 * 5`
r=$( ( 4 * 5 ))
r=$[ 4 * 5 ]
echo $r

division
r=`expr 40 / 5`
r=$(( 40 / 5 ))
r=$[ 40 / 5 ]
echo $r

뺄셈
r=`expr 40 - 5`
r=$(( 40 - 5 ))
r=$[ 40 - 5 ]
echo $r

나머지 구하기
r=$[ 100 % 43 ]
echo $r

Powered(예: 2의 3승)
r=$(( 2 ** 3 ))
r=$[ 2 ** 3 ]
echo $r
참고: expr 아니요 곱셈

4. let 명령을 사용하세요

추가:
n=10
let n=n+1
echo $n #n=11

곱하기:
let m=n*10
echo $m

Division:
let r=m/10
echo $r

나머지 찾기:
let r=m%7
echo $r


Power:
let r=m**2
echo $r

Bash 쉘에는 4가지 산술 연산 방법이 있지만 모두 크로스 플랫폼인 것은 아닙니다. expr을 사용하는 것이 좋습니다.
또한 스크립트에서는 종종 add 1 작업을 사용할 수 있습니다.
m=$[ m + 1]
m=`expr $m + 1`
m=$(($m + 1 ))
m=m+1

하자

 

Shell awk 循环求和

1. 简单求和

$ cat test.txt 
11
22
33
44
55
$ awk '{sum += $1};END{print sum}' test.txt  
165
로그인 후 복사


2. 特定列求和

$ cat test.txt 
aa      11
bb      22
cc      33
aa      44
dd      55
$ awk '/aa/ {sum += $2};END {print sum}' test.txt 
55
로그인 후 복사


3. 求和、平均数、最大值、最小值

$ cat test.txt 
aa      11
bb      22
cc      33
aa      44
dd      55
$ cat test.txt | awk '{sum += $2};END {print sum}'
165
$ cat test.txt | awk '{sum += $2};END {print sum/NR}'
33
$ cat test.txt | awk 'BEGIN {max=0} {if($2>max) max=$2 fi};END {print max}'
55
$ cat test.txt | awk &#39;BEGIN {min=999999999} {if($2<min) min=$2 fi};END {print min}&#39;
로그인 후 복사

awk 浮点运算:

运算表达式: awk 'BEGIN{printf "%.6f\n", ( 10 / 3)}'

运算结果: 3.333333

PS:shell的内部算术运算符无法处理浮点数,所以当需要处理浮点数是,要用到外部工具(如awk)

相关推荐:

shell每天自动备份mysql数据库的方法实例

위 내용은 Linux의 쉘 산술 연산에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿