溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

利用Shell腳本實(shí)現(xiàn)調(diào)快調(diào)慢系統(tǒng)時(shí)間功能

發(fā)布時(shí)間:2021-07-30 16:57:38 來(lái)源:億速云 閱讀:233 作者:chen 欄目:開(kāi)發(fā)技術(shù)

本篇內(nèi)容介紹了“利用Shell腳本實(shí)現(xiàn)調(diào)快調(diào)慢系統(tǒng)時(shí)間功能”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

代碼如下:

#!/bin/bash 
# Author: MOS 
# Script name: etime.sh 
# Date & Time: 2013-01-02/21:47:58 
# Version: 1.0.1 
# Description: 
# 
#ntpserver 
Tip='time.nist.gov' 
 
# sync now system time, yes: $3="-u"  no: $3 is none. 
if [[ "$3" == "-u" ]];then 
    Tcmd='/usr/bin/rdate' 
    [ ! -x $Tcmd ] && echo 'rdate not install!!' && exit 1 
    "$Tcmd" -s "$Tip" 
fi 
 
# Modf 
if [[ -n "$2" &&  "$1" == '-' || "$1" == '+' ]];then 
    Func=$1 
    [[ "$3" == "-s" ]] && Num=$2 || Num=$(($2*60)) 
    Ntime=`date +%s` 
    Ltime=$(($Ntime$Func$Num)) 
    #Date=`/bin/date -d @"$Ltime" 2>/dev/null` 
    #echo $Ltime 
    Res=`date -d "1970-01-01 UTC $Ltime seconds" +%m%d%H%M%Y.%S` 
    date 
    date $Res 
else 
    echo 'First,input + or -;Second,input a number.' 
    exit 2 
fi

筆者已上傳到附件,下載后,先給個(gè)執(zhí)行權(quán)限,然后放到系統(tǒng)路徑:

代碼如下:

[root@vpn1 scripts]# ls 
casetup.sh  etime.sh 
[root@vpn1 scripts]# chmod +x etime.sh 
[root@vpn1 scripts]# mv etime.sh /bin/etime


用法格式如下:

代碼如下:

command [+|-] number [option]


筆者寫(xiě)的急,代碼并非精煉,慎用:譬如,時(shí)間同步失敗未作處理,number位置的嚴(yán)格限制等,用法示例如下:

1. 與時(shí)間服務(wù)器(time.nist.gov)同步 -u ,代碼第九行,可根據(jù)您的位置,自行修改指定的時(shí)間服務(wù)器;如果您的rdate命令未安裝至(/usr/bin/rdate),腳本會(huì)自動(dòng)退出

代碼如下:

[root@vpn1 scripts]# date 
Thu Jan  3 00:13:25 CST 2013 
[root@vpn1 scripts]# etime + 0 -u 
Wed Jan  2 16:13:29 CST 2013    #第一行輸出為當(dāng)前時(shí)間,使用-u參數(shù)時(shí),時(shí)間更新順序排在修改時(shí)間之前
Wed Jan  2 16:13:29 CST 2013    #第二行輸出為修改為時(shí)間
[root@vpn1 scripts]# grep -n "time.nist.gov" /bin/etime 
9:Tip='time.nist.gov'

2. 以當(dāng)前系統(tǒng)時(shí)間為準(zhǔn),調(diào)快10分鐘,默認(rèn)以分鐘為單位

代碼如下:

[root@vpn1 scripts]# etime + 10 
Wed Jan  2 16:24:47 CST 2013 
Wed Jan  2 16:34:47 CST 2013


3. 以當(dāng)前系統(tǒng)時(shí)間為準(zhǔn),調(diào)慢20分鐘,以秒為單位

代碼如下:

[root@vpn1 scripts]# etime - 600 -s 
Wed Jan  2 16:36:27 CST 2013 
Wed Jan  2 16:26:27 CST 2013


4. 以當(dāng)前世界時(shí)間為準(zhǔn),調(diào)快50分鐘,只能以分鐘為單位

代碼如下:

[root@vpn1 scripts]# etime + 50 -u 
Wed Jan  2 16:28:25 CST 2013 
Wed Jan  2 17:18:25 CST 2013


另附倆個(gè)暫時(shí)可用的時(shí)間服務(wù)器:

代碼如下:

time.nist.gov
rdate.darkorb.net
time-b.nist.gov
ntp.openxid.com

“利用Shell腳本實(shí)現(xiàn)調(diào)快調(diào)慢系統(tǒng)時(shí)間功能”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI