国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

寫(xiě)一個(gè)腳本判斷日期是否合法

阿銘linux ? 來(lái)源:阿銘linux ? 2022-12-30 09:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

【需求】

用shell腳本判斷輸入的日期是否合法。就是判斷日期是否是真實(shí)的日期,比如20170110就是合法日期,20171332就不合法。假定年份不超過(guò)4位。

【分析】

判斷日期是否合法,使用cal命令即可,cal命令用法:

1)cal什么都不加,打印全年的日歷

cal

2)cal后面帶一個(gè)參數(shù),只能是帶年份

cal 2022

這里的2022為年份,數(shù)值最小值為1,最大為999999999。

3)cal后面帶兩個(gè)參數(shù),第一個(gè)為月份,第二個(gè)為年份

cal 10 2022

如果帶兩個(gè)參數(shù)時(shí),第一個(gè)參數(shù)范圍為1-12

4)cal后面帶三個(gè)參數(shù),第一個(gè)為日期,第二個(gè)為月份,第三個(gè)為年份

cal 10 10 2022

第一個(gè)數(shù)值范圍1-31

有了以上cal命令的用法總結(jié),接下來(lái)就是要把提供的日期劃分成三部分:日期、月份、年份。

截取字符串,可以使用${an2},例如

a=12345
echo${a3}##表示,截取字符串從第一位開(kāi)始,截取3位
123

【參考答案】

#!/bin/bash
if [ $# -ne 1 ] || [ ${#1} -ne 8 ]
then
echo "Usage: bash $0 yyyymmdd"
exit 1
fi
datem=$1
year=${datem4}
month=${datem2}
day=${datem2}
if echo $day|grep -q '^0'
then
    day=`echo $day |sed 's/^0//'`
fi
if cal $day $month $year >/dev/null 2>/dev/null
then
     echo ok
else
     echo "Error: Please input a wright date."
     exit 1
fi

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Shell
    +關(guān)注

    關(guān)注

    1

    文章

    375

    瀏覽量

    25375
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    409

    瀏覽量

    29193

原文標(biāo)題:寫(xiě)一個(gè)腳本判斷日期是否合法

文章出處:【微信號(hào):aming_linux,微信公眾號(hào):阿銘linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    個(gè)判斷操作系統(tǒng)的VBScript腳本代碼

    西門(mén)子觸摸屏基于不同的Windows操作系統(tǒng),有的是標(biāo)準(zhǔn)的Windows系統(tǒng),有的是嵌入式操作系統(tǒng)Windows CE。這兩種系統(tǒng)對(duì)于VBScript腳本的支持不同,因此在使用腳本編程之前,要判斷當(dāng)前屏幕是基于何種操作系統(tǒng)。今天
    發(fā)表于 09-21 14:56 ?1018次閱讀

    工作中這種檢測(cè)腳本太常見(jiàn)了

    寫(xiě)個(gè)檢測(cè)腳本,用來(lái)檢測(cè)本機(jī)所有磁盤(pán)分區(qū)讀寫(xiě)是否都正常。
    發(fā)表于 11-07 09:42 ?611次閱讀

    給你篇部署文檔,你能不能寫(xiě)個(gè)腳本出來(lái)

    誰(shuí)開(kāi)始寫(xiě)shell腳本不是從流水賬開(kāi)始的?寫(xiě)著寫(xiě)著你就會(huì)發(fā)現(xiàn),需要在哪里加判斷,在哪里拋出異常。寫(xiě)著寫(xiě)著就知道何時(shí)用函數(shù),何時(shí)用變量。寫(xiě)著寫(xiě)著你就會(huì)說(shuō),shell
    發(fā)表于 11-23 09:07 ?430次閱讀

    寫(xiě)flash,要不要加個(gè)判斷

    寫(xiě)flash,要不要加個(gè)判斷?”這是我個(gè)朋友的提問(wèn)。
    的頭像 發(fā)表于 11-21 10:07 ?1441次閱讀
    <b class='flag-5'>寫(xiě)</b>flash,要不要加個(gè)<b class='flag-5'>判斷</b>?

    stm32 IAP例程跳轉(zhuǎn)到APP區(qū)時(shí)為什么都會(huì)檢查棧頂?shù)刂?b class='flag-5'>是否合法

    在stm32 IAP例程中,跳轉(zhuǎn)到APP區(qū)的時(shí)候,都會(huì)檢查棧頂?shù)刂?b class='flag-5'>是否合法,以及reset地址是否正確等信息,那么這些判斷具體依據(jù)什么原理???以stm32H743為例說(shuō)明↓↓↓↓檢查
    發(fā)表于 02-15 06:35

    如何判斷可控硅的三個(gè)極?如何判斷可控硅是否損壞?

    如何判斷可控硅的三個(gè)極?如何判斷可控硅是否損壞?
    發(fā)表于 03-02 17:11 ?1.2w次閱讀

    C語(yǔ)言教程之判斷個(gè)數(shù)是否存在數(shù)組中

    C語(yǔ)言教程之判斷個(gè)數(shù)是否存在數(shù)組中,很好的C語(yǔ)言資料,快來(lái)學(xué)習(xí)吧。
    發(fā)表于 04-25 15:13 ?0次下載

    stm32 BootLoader之檢查棧頂?shù)刂?b class='flag-5'>是否合法

    在stm32 IAP例程中,跳轉(zhuǎn)到APP區(qū)的時(shí)候,都會(huì)檢查棧頂?shù)刂?b class='flag-5'>是否合法,以及reset地址是否正確等信息,那么這些判斷具體依據(jù)什么原理???以stm32H743為例說(shuō)明↓↓↓↓檢查
    發(fā)表于 12-16 16:58 ?11次下載
    stm32 BootLoader之檢查棧頂?shù)刂?b class='flag-5'>是否</b><b class='flag-5'>合法</b>

    寫(xiě)個(gè)自動(dòng)化重啟服務(wù)腳本

    腳本可以每分鐘執(zhí)行次,腳本執(zhí)行時(shí)截取上分鐘的日志,可以計(jì)算總?cè)罩拘袛?shù),和出現(xiàn)502的行數(shù),計(jì)算比例,這里我給大家定
    的頭像 發(fā)表于 11-22 10:12 ?1812次閱讀

    來(lái)練習(xí)個(gè)寫(xiě)Redis部署的腳本

    繼Nginx和MySQL的部署腳本之后,相信只要你跟著寫(xiě)了,那么里面的很多關(guān)鍵精髓你已經(jīng)知曉,今天就來(lái)練習(xí)個(gè)寫(xiě)Redis部署的腳本吧。
    的頭像 發(fā)表于 12-01 09:16 ?1425次閱讀

    監(jiān)控你的站點(diǎn)訪問(wèn)是否正常

    寫(xiě)個(gè)監(jiān)控腳本,監(jiān)控某站點(diǎn)訪問(wèn)是否正常。
    的頭像 發(fā)表于 12-06 14:38 ?1416次閱讀

    個(gè)網(wǎng)絡(luò)IP地址是否在同一個(gè)段中的判斷方法

    我們知道IP地址是由“網(wǎng)絡(luò)號(hào)+子網(wǎng)號(hào)+主機(jī)號(hào)”組成,判斷個(gè)IP地址是否在同一個(gè)網(wǎng)段主要看“網(wǎng)絡(luò)號(hào)”,如果網(wǎng)絡(luò)號(hào)樣,那么他們就在同
    的頭像 發(fā)表于 06-02 14:31 ?1.6w次閱讀
    兩<b class='flag-5'>個(gè)</b>網(wǎng)絡(luò)IP地址<b class='flag-5'>是否</b>在同<b class='flag-5'>一個(gè)</b>段中的<b class='flag-5'>判斷</b>方法

    編寫(xiě)個(gè)點(diǎn)名器腳本

    目的:編寫(xiě)個(gè)腳本,可以將準(zhǔn)別好的名字合集的.txt傳入腳本,然后每次隨機(jī)顯示一個(gè)人的姓名
    的頭像 發(fā)表于 11-06 12:41 ?1132次閱讀
    編寫(xiě)<b class='flag-5'>一</b><b class='flag-5'>個(gè)</b>點(diǎn)名器<b class='flag-5'>腳本</b>

    如何判斷個(gè)連接器是否需要更換?

    如何判斷個(gè)連接器是否需要更換? 判斷個(gè)連接器
    的頭像 發(fā)表于 01-30 16:51 ?1603次閱讀

    如何判斷個(gè)軟啟動(dòng)器是否故障

    軟啟動(dòng)器的主要構(gòu)成是串接于電源與被控電機(jī)之間的三相反并聯(lián)晶閘管及其電子控制電路。運(yùn)用不同的方法,控制三相反并聯(lián)晶閘管的導(dǎo)通角,使被控電機(jī)的輸入電壓按不同的要求而變化,就可實(shí)現(xiàn)不同的功能。判斷個(gè)
    的頭像 發(fā)表于 04-10 07:34 ?2373次閱讀
    如何<b class='flag-5'>判斷</b><b class='flag-5'>一</b><b class='flag-5'>個(gè)</b>軟啟動(dòng)器<b class='flag-5'>是否</b>故障