2021年1月10日 星期日

Shell script 範例

 1. 判斷此script若是沒有帶入參數,則變數foo的值為"jacky",若有帶入一個參數值為"danny",則指定foo的值為此參數值

==========================================================

#!/bin/sh
[ -z "$1" ] && FOO="jacky" || FOO="$1"  #$1 assign "danny"

echo "$FOO"

===========================================================






2. 判斷檔案"123.txt"是否存在的範例

==========================================================

#!/bin/sh
if [ -f  "123.txt" ]; then
echo "File exist ..."
else
echo "File not exist!"
fi

===========================================================


3. 判斷檔案副檔名是否為".bin" 以及 判斷檔案大小為 "131072" Byte

==========================================================

#!/bin/sh
FILEPATH="/data/aaa.bin"
EXT="${FILEPATH##*.}"  #取得副檔名
echo "test ext=$EXT"
FSIZE=`ls -l $FILEPATH | awk '{ print $5 }'`    #取得file size

###### check file extention ######
if [ "$EXT" == "bin" ]; then
    echo "file format is ok..."
else
    echo "file format error!"
fi

###### check file size ########
echo "test FSIZE=$FSIZE"
if [ "$FSIZE" == "131072" ]; then
    echo "file size is ok..."
else
    echo "file size error!"
fi

==========================================================


4. 在While loop 當中,每隔5秒,交錯做兩件事 (A事情 / B事情)

==============================================

#!/bin/sh

count=0

while [ 1 ]
do
        count=$(($count+1))

        if [ $(( count%2 )) == 0 ]; then
                        echo "Do A things !!!"
        else
                        echo "Do B things !!!"
        fi
        echo $count
        sleep 5
done

===================================================

持續增加中........