1. 程式人生 > 其它 >shell之常用的一些命令2

shell之常用的一些命令2

前言

  自我感覺學習shell要常用`man`,`--help`這樣挺方便去寫的,光靠熟練遠遠不夠的

#!/bin/bash
wget命令
我用到最多就是請求http網站啦,一般很少加引數
set -x
url(){
timeout=6
fail=0
success=0
while true
do
       	wget --timeout=$timeout --tries=1 https://www.cnblogs.com/zqxFly/ -q -o /dev/null
        if [ $? -ne 0]
	then
	        let fail=fail+1
        else
                let success+=1
        fi
        if [ $success -ge 1]
	then
                echo success
                exit 0
        fi
        if [ $fails -ge 2]
	then
                ttry="sys is dowm"
                echo $ttry|tee|mail -s "https://www.cnblogs.com/xxx"
                exit 2
        fi
done
}
url

wget 接http link

expr 命令是一個手工命令列計數器
1.結合match進行整數判斷
if [[`expr match "$1" "[0-9] [0-9]*$"` == 0 ] ]
then
echo "$1 is not a num"
else
echo "$1 is a num"
fi
2.判斷字元
expr $1 + 1 >/dev/null 2>&1
[ $? -eq 0 ] &&echo int || echo chars
while true
do
	read -p "hello adol":a
	expr $a + 0 >/dev/null 2>&1
	[ $? -eq 0 ] && echo int || echo chars
done
3.整數運算[ $# -ne 2 ] &&{
echo $"usage $0 num1 num2"
exit 1
}
a=$1
b=$2
expr $a + $b + 110 &>/dev/null
if [ $? -ne 0 ]
then
	echo "you must two nums"
	exit
fi
echo "a-b=$(($a-$b))"
echo "a+b=$(($a+$b))"
echo "a*b=$(($a*$b))"
echo "a/b=$(($a/$b))"
echo "a**b=$(($a**$b))"
echo "a%b=$(($a%$b))"

bc 命令是任意精度計算器語言
bc(選項)(引數)
通過管道符
echo "1.11+2" | bc
直接輸入bc

read命令用於從標準輸入讀取數值