linux 实现shell睡眠脚本

脚本名称sleep_test。
语法:sleep_test 秒数
例子:
sleep_test #默认睡眠10秒
sleep_test 20 #睡眠20秒
注:
请在Bourn Again Shell环境下运行此脚本。
此脚本仅做测试用,非睡眠精确秒数。如有需要,请用sleep命令。

#!/bin/bash
# SYNOPSIS: sleep_test [seconds]
# DESCRIPTION: 睡眠脚本,让系统睡眠xx秒
# AUTHOR:HYM    VERSION:0.1
if [ 1 -lt $# ] ; then
    echo "Usage sleep [seconds]"
fi
nonsec=`echo "$1" | egrep -v "[0-9]"`
if [ $nonsec ] ; then
    echo -e "$nonsec\nUsage sleep [seconds];\nSeconds must be an integer!"
fi
sec=`echo "$1"`
#default sleep for 10 sec
if [ -z $sec ] ; then
    sec=10
fi
d1=`date +%s`
for((i=0;i<=$sec;))
do
    d=`date +%s`
    if [ $d1 -lt $d ] ; then
        echo "$i seconds passed."
        i=$(($i+($d-$d1)))
        d1=$d
    fi
done

你可能感兴趣的:(linux,shell)