linux shell 如何比较两个整数的大小

linux shell 如何比较两个整数的大小,第1张

linux shell比较两个整数的大小可以采用以下的代码:

#!/bin/sh

max=9

min=8

if [ $max -gt $min ]

then

echo 1

else

echo 0

fi

数字的比较:

-eq 相等(equal)

-ne 不等(not equal)

-gt 大于(greater than)

-lt 小于(less than)

-ge 大于等于 (greater than or equal)

-le 小于等于 (less than or equal)

字符串的比较:

[ $str1 = $str2 ] 等于

[ $str1 != $str2 ] 不等于

[ -z $str ] 空字符串返回true

[ -n $str ] 或者 [ $str ] 非空字符串返回true

扩展资料:

Shell是系统的用户界面,提供了用户与内核进行交互 *** 作的一种接口。它接收用户输入命令并把它送入内核去执行。

shell命令

命令行c

用户登录到Linux系统时,可以看到一个shell提示符,标识了命令行的开始。用户可以在提示符后面输入任何命令及参数。例如:

$ date

二 11 23 01:34:58 CST 1999

$

用户登录时,实际进入了shell,它遵循一定的语法将输入的命令加以解释并传给系统。命令行中输入的第一个字必须是一个命令的名字,第二个字是命令的选项或参数,命令行中的每个字必须由空格或TAB隔开,格式如下:

$ Command Option Arguments

参考资料来源:百度百科-Linux Shell

unset 不能这么用,需要指定数组索引,也就是数组下标,而不是数组的值,你可以这样干:

#check if there are any files added

folder_list=(1 2 3 4 5)

file_list=(1 2)

declare -a result_list

t=0

flag=0

echo folder_list=${folder_list[*]}

echo file_list=${file_list[*]}

for m in "${folder_list[@]}"

do

for l in "${file_list[@]}"

do

if [ "$m" == "$l" ]then

flag=1

break

fi

done

if [ $flag -eq 0 ]then

result_list[t]=$m

t=$((t+1))

else

flag=0

fi

done

echo result_list=${result_list[*]}

弄个结果数组保存结果,把在file_list里找不到的folder_list值存到结果数组中。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8930527.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存