脚本开发收获(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_32635069/article/details/80755240

1、解析Windows目录是,split(“\\”) 需要四个反斜杠,原因是:在java中 \ 相当于 \
并且在regex(正则表达式)中 \ 相当于 \ 所以要用 \\

2、nl命令列出内容,为文件添加行号等
Sed命令学习https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2856901.html
sed ‘s/要被取代的字串/新的字串/g’
grep –v “da” 忽略含有da的数据
awk –Fa ‘{print $1}’ 以a为分隔符,打印第一项
tail -f 查看不断增加的日志文件

3、shell的小数运算
shell不支持浮点计算
configMemory和realMemorySize使用bc命令来实现浮点运算以及浮点数的比较

realMemorySize=$(echo $realMemorySize*1.1 | bc)
if [ $(echo $configMemorySize > $realMemorySize | bc) == 1 ];then
        return 1
    fi  

shell比较数的大小的具体规则

这些是针对整数的

-gt表示大于
-lt表示小于
-eq表示等于
-ne表示不等于
-ge表示大于等于
-le表示小于等于

对于字符串

=与==的效果是一样的

a="3"
b="4"
if [ $a == $b ];then
    echo "equal"
else
    echo "not equal"
fi

not equal

a="3"
b="4"
if [ $a == "3" ];then
    echo "equal"
else
    echo "not equal"
fi

equal

a="312"
b="4"
if [[ $a == 3* ]];then
    echo "equal"
else
    echo "not equal"
fi

equal
注:在[ [ ] ]中 == 进行的模式匹配

a="312"
b="4"
if [ $a == 3* ];then
    echo "equal"
else
    echo "not equal"
fi

not equal

a="312"
b="4"
if [[ $a == "3*" ]];then
    echo "equal"
else
    echo "not equal"
fi

not equal

猜你喜欢

转载自blog.csdn.net/qq_32635069/article/details/80755240