日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

Linux实战教学笔记13:定时任务补充

發(fā)布時(shí)間:2025/3/15 linux 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux实战教学笔记13:定时任务补充 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

第十三節(jié) 定時(shí)任務(wù)補(bǔ)充

標(biāo)簽(空格分隔): Linux實(shí)戰(zhàn)教學(xué)筆記

---[更多資料點(diǎn)我查看][1]

1,生產(chǎn)環(huán)境常用Crontab專業(yè)實(shí)例

1.1書寫crontab定時(shí)任務(wù)多個(gè)基本要領(lǐng)

1.1.1 規(guī)范定時(shí)任務(wù)兩例

例1:每分鐘打印一次自己的名字拼音全拼到“/server/log/自己的名字命名的文件”中。

[root@chensiqi1 ~]# mkdir -p /server/log/ [root@chensiqi1 ~]# echo "chensiqi" >>/server/log/chensiqi [root@chensiqi1 ~]# cat /server/log/chensiqi chensiqi [root@chensiqi1 ~]# crontab -e crontab: installing new crontab [root@chensiqi1 ~]# crontab -l ##print name to file * * * * * /bin/echo "chensiqi" >>/server/log/chensiqi [root@chensiqi1 ~]#

解答:
方法1:

#print my name to log by chensiqi at 2017211 * * * * * /bin/echo "chensiqi" >>/server/log/chensiqi

方法2

#print my name to log by chensiqi at 2017211 */1 * * * * /bin/echo "chensiqi" >>/server/log/chensiqi >dev/null 2>&1 提示:這是一個(gè)錯(cuò)誤的定時(shí)任務(wù),請(qǐng)同學(xué)們思考錯(cuò)在了哪里?

解答知識(shí)小結(jié):

1,定時(shí)任務(wù)要加注釋
2,如果已經(jīng)要定向到文件中,結(jié)尾不要有>/dev/null 2>&1
3,/server/log目錄必須要存在才能出結(jié)果,如沒(méi)有創(chuàng)建這個(gè)目錄。
4,定時(shí)任務(wù)中的路徑一定要絕對(duì)路徑
5,crond服務(wù)必須首先開(kāi)啟
6,查看定時(shí)任務(wù)日志tail /var/log/cron

例2:每周六,日上午9點(diǎn)和下午14點(diǎn)(執(zhí)行/server/scripts/chensiqi.sh).要求:/server/scripts/chensiqi.sh腳本的功能是打印當(dāng)天的日期:格式為2017-02-11可以隨意。

解答:

## 00 9,14 * * 0,6 /bin/sh /server/scripts/chensiqi.sh >/dev/null 2>&1

步驟:

  • 1,創(chuàng)建對(duì)應(yīng)的目錄
    mkdir /server/scripts -p
  • 2,命令行測(cè)試
    date +%F 2017-02-11
  • 3,書寫腳本
    echo 'date +%F' >/server/scripts/chensiqi.sh cat /server/scripts/chensiqi.sh
  • 4,命令行測(cè)試腳本
    /bin/sh /server/scripts/chensiqi.sh
    2017-02-11
  • 5,編輯定時(shí)任務(wù)(讓他快速執(zhí)行*****)
    crontab -e
    #sync time chensiqi at 20170211 */5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >>/server/log/chensiqi.log 2>&1

注意:
測(cè)試的時(shí)候最好定向到一個(gè)文件中。

  • 6,測(cè)試
    tail -f /server/log/chensiqi.log
    2017-02-11
  • 7,按照原來(lái)的要求更改定時(shí)任務(wù)的時(shí)間
#go to chensiqi trainning by chensiqi at 20170211 00 09,14 * * 0,6 /bin/sh /server/scripts/chensiqi.sh >>/server/log/chensiqi.log

技巧:

  • 定時(shí)任務(wù)一定要盡量用腳本實(shí)現(xiàn)。
  • 命令行操作成功,然后放入腳本執(zhí)行(/bin/sh 腳本全路徑)成功,最后在配置任務(wù)
  • 復(fù)制操作成功的命令行腳本,再定時(shí)任務(wù)里黏貼配置。
  • 加/bin/sh執(zhí)行腳本 /bin/sh /server/script/chensiqi.sh
  • 要把腳本的執(zhí)行結(jié)果定向到空或者是一個(gè)文件中,不要什么都不加。
  • 1.1.2 定時(shí)任務(wù)書寫要領(lǐng)

    • 要領(lǐng)1:為定時(shí)任務(wù)規(guī)則加必要的注釋

    加必要注釋:寫定時(shí)任務(wù)規(guī)則時(shí)盡可能的加上注釋(最好是英文注釋),這是個(gè)好的習(xí)慣和規(guī)范。
    例如:誰(shuí)在什么時(shí)間干了什么(注釋內(nèi)容)什么人,什么時(shí)間,因?yàn)槭裁?#xff0c;做了什么。如果這些都標(biāo)記清楚了,這樣其他的運(yùn)維人員可以很容易的理解任務(wù)的信息,從而提升團(tuán)隊(duì)的工作效率。

    • 要領(lǐng)2:執(zhí)行shell腳本任務(wù)前加/bin/sh

    執(zhí)行定時(shí)任務(wù)時(shí),如果是執(zhí)行腳本,請(qǐng)盡量在腳本前面加上/bin/sh命令,否則有可能因?yàn)橥藶槟_本設(shè)定執(zhí)行權(quán)限(x),從而以為OK了,結(jié)果無(wú)法完成任務(wù),這樣就“悲劇”了

    • 要領(lǐng)3:定時(shí)任務(wù)命令或腳本的結(jié)尾加>/dev/null 2>&1

    定時(shí)任務(wù)(一般是腳本任務(wù))規(guī)則的結(jié)尾最好加上>/dev/null 2>&1等內(nèi)容,如果需要打印日志,則可以追加到指定的日志文件里(此時(shí)不要和/dev/null同時(shí)存在),盡量不要留空。如果任務(wù)是命令的話,結(jié)尾使用“>/dev/null 2>&1”時(shí)要多測(cè)試下,要有檢查手段。如:/1 * * * echo "==" >>/tmp/chensiqi.log>/dev/null 2>&1 任務(wù)規(guī)則就是無(wú)法執(zhí)行的。

    • 要領(lǐng)4:定時(shí)任務(wù)命令超過(guò)2條的命令執(zhí)行,最好用腳本文件

    超過(guò)2條的命令執(zhí)行,最好用腳本文件。下面的方法就是不規(guī)范的,不專業(yè)的。
    * * * * * sleep 1;echo chensiqi >> /server/log/chensiqi.log

    標(biāo)準(zhǔn)寫法:

    [root@chensiqi /]# cat /server/scripts/log.sh sleep1 echo chensiqi >> /server/log/chensiqi.log

    定時(shí)任務(wù)寫法:

    * * * * * /bin/sh /server/scripts/log.sh >dev/null 2>&1定時(shí)任務(wù),給定時(shí)任務(wù)看病的日志/var/log/cron
    • 要領(lǐng)5:在指定用戶下執(zhí)行相關(guān)定時(shí)任務(wù)

    需要root權(quán)限執(zhí)行的任務(wù)可以登錄到root用戶下然后設(shè)置,如果不需要root權(quán)限,可以登錄到普通用戶下(也可以直接在root下crontab -u chensiqi -e 的寫法直接設(shè)置),然后設(shè)置。這里要特別注意不同用戶的環(huán)境變量問(wèn)題,如果是調(diào)用了系統(tǒng)環(huán)境變量/etc/profile(如生產(chǎn)場(chǎng)景中java程序的定時(shí)任務(wù)),最好在程序腳本中將用到的環(huán)境變量重新export下(下文有案例)。

    • 要領(lǐng)6:生產(chǎn)任務(wù)程序不要隨意打印輸出信息。
      盡量關(guān)閉取消沒(méi)有用的輸出(命令的執(zhí)行過(guò)程)
      1,定向到文件
      2,>/dev/null 2>&1
      在開(kāi)發(fā)定時(shí)任務(wù)程序或腳本時(shí),在調(diào)試好腳本程序后,應(yīng)盡量把DEBUG及命令輸出的內(nèi)容信息屏蔽掉,如果確實(shí)需要輸出日志,可定向到執(zhí)行日志文件里,避免產(chǎn)生系統(tǒng)垃圾。

    • 要領(lǐng)7:定時(shí)任務(wù)命令或程序最好寫到腳本里執(zhí)行

    • 要領(lǐng)8:定時(shí)任務(wù)執(zhí)行的腳本要規(guī)范路徑

    例如:/server/scripts

    • 要領(lǐng)9:配置定時(shí)任務(wù)規(guī)范操作過(guò)程,防止出錯(cuò)。

    1,首先要在命令行操作成功,然后復(fù)制成功的命令到腳本里,在各個(gè)細(xì)小環(huán)節(jié)減少出錯(cuò)的機(jī)會(huì)。
    2,然后測(cè)試腳本,測(cè)試成功后,復(fù)制腳本的規(guī)范路徑到定時(shí)任務(wù)配置里,不要手敲。
    3,先在測(cè)試環(huán)境下測(cè)試,然后正式環(huán)境規(guī)范部署

    小結(jié):

    書寫定時(shí)任務(wù)的若干要領(lǐng)方法:
    要領(lǐng)1:為定時(shí)任務(wù)規(guī)則加必要的注釋。
    要領(lǐng)2:執(zhí)行shell腳本任務(wù)前加/bin/sh
    要領(lǐng)3:定時(shí)任務(wù)命令或腳本結(jié)尾加>/dev/null 2>&1
    要領(lǐng)4:定時(shí)任務(wù)命令或程序最好寫到腳本里執(zhí)行
    要領(lǐng)5:在指定用戶下執(zhí)行相關(guān)的定時(shí)任務(wù)
    要領(lǐng)6:生產(chǎn)任務(wù)程序不要隨意打印輸出信息
    要領(lǐng)7:定時(shí)任務(wù)執(zhí)行的腳本要規(guī)范路徑(/server/scripts)
    要領(lǐng)8:配置定時(shí)任務(wù)規(guī)范操作過(guò)程

    1.1.3 在命令行輸入./chensiqi.sh(/server/scripts/chensiqi.sh)與sh chensiqi.sh區(qū)別在哪?

    [root@chensiqi1 ~]# cat chensiqi.sh#!/bin/bashecho "chensiqi" [root@chensiqi1 ~]# ll chensiqi.sh -rw-r--r--. 1 root root 29 Feb 10 21:44 chensiqi.sh [root@chensiqi1 ~]# sh chensiqi.sh chensiqi [root@chensiqi1 ~]# ./chensiqi.sh -bash: ./chensiqi.sh: Permission denied [root@chensiqi1 ~]# 命令說(shuō)明: sh chensiqi.sh表示用/bin/sh這個(gè)命令來(lái)解析并啟動(dòng)chensiqi.sh這個(gè)腳本。而./chensiqi.sh表示利用linux的默認(rèn)解釋器來(lái)解析并啟動(dòng)這個(gè)腳本。因此,./chensiqi.sh需要linux下x的執(zhí)行權(quán)限,而sh chensiqi.sh不需要。

    1.1.4 定時(shí)任務(wù)不加>/dev/null 2>&1的后果

    • 如果定時(shí)任務(wù)規(guī)則結(jié)尾不加>/dev/null 2>&1等命令配置,有可能有大量輸出信息,時(shí)間長(zhǎng)了,可能由于系統(tǒng)未開(kāi)啟郵件服務(wù)而導(dǎo)致郵件臨時(shí)目錄/var/spool/clientmqueue 文件數(shù)猛增的隱患發(fā)生,大量文件會(huì)占用大量磁盤inode節(jié)點(diǎn)(每個(gè)文件占一個(gè)inode),以致磁盤inode滿而無(wú)法寫入正常數(shù)據(jù)(下文有案例)。
    • 提示:上面的>/dev/null 2>&1 寫法也可以寫成1>/dev/null 2>/dev/null,例:$JAVA-jar $RESIN_HOME/lib/resin.jar $ARGS stop 1>/dev/null 2>/dev/null 此寫法來(lái)自resin服務(wù)默認(rèn)啟動(dòng)腳本
    • 上述是centos5.8的情況,假如系統(tǒng)不安裝sendmail(Centos6.4),那是不是就沒(méi)有上述問(wèn)題了?

    企業(yè)案例::如果定時(shí)任務(wù)規(guī)則結(jié)尾不加>/dev/null 2>&1,很容易導(dǎo)致硬盤inode空間被占滿,從而系統(tǒng)服務(wù)不正常。

    當(dāng)一個(gè)定時(shí)任務(wù)執(zhí)行的時(shí)候,就會(huì)給系統(tǒng)發(fā)一封郵件。sendmail郵件服務(wù),經(jīng)常是關(guān)閉的,所以定時(shí)任務(wù)發(fā)送的郵件就會(huì)臨時(shí)堆在/var/spool/clientmqueue/,時(shí)間長(zhǎng)了,/var/spool/clientmqueue/文件數(shù)特別多。Centos5的時(shí)候一定會(huì)有這個(gè)問(wèn)題。

    Centos6呢?請(qǐng)往下看。

    [root@chensiqi1 ~]# cat /etc/redhat-release CentOS release 6.8 (Final) [root@chensiqi1 ~]# crontab -l #go to chensiqi trainning by chensiqi at 20170211 * * * * * /bin/sh /root/chensiqi.sh [root@chensiqi1 ~]# ls /var/spool/postfix/maildrop/ D3AD0C6 DB2BAC9 E14E6D0 E5222D1 [root@chensiqi1 ~]# 命令說(shuō)明: 定時(shí)任務(wù)沒(méi)定向到空,postfix服務(wù)沒(méi)有開(kāi)啟的話,那么每執(zhí)行一次定時(shí)任務(wù),/var/spool/postfix/maildrop/文件夾下就會(huì)產(chǎn)生一個(gè)小文件,隨著時(shí)間累計(jì),就會(huì)越來(lái)越多,導(dǎo)致出現(xiàn)問(wèn)題。 如果開(kāi)啟了郵件服務(wù),就會(huì)直接給root發(fā)送郵件。

    解決方法:
    1,刪除大量小文件/var/spool/postfix/maildrop/下所有文件(ls|xargs rm -f)
    2,臨時(shí)開(kāi)啟postfix(sendmail)服務(wù)
    3,vi /etc/crontab:將‘MAILTO=root’替換成‘MAILTO=“”’然后service crond restart即可。(如果還不行,crontab -e 第一行增加MAILTO=“”)

    亡羊補(bǔ)牢:

    定時(shí)任務(wù)定向到空>/dev/null 2>&1

    目錄名解釋
    /var/spool/clientmqueuecentos5.xsendmail臨時(shí)郵件文件目錄,有很多原因會(huì)導(dǎo)致這個(gè)目錄碎文件很多,比如crontab定時(shí)任務(wù)命令不加>/dev/null等,并且sendmail服務(wù)沒(méi)開(kāi)。工作中偶爾會(huì)因?yàn)樵撃夸浳募?#xff0c;導(dǎo)致/var所在的分區(qū)inode數(shù)量被消耗盡,無(wú)法寫入文件的情況
    /var/spool/postfix/maildrop/centos6.x postfix臨時(shí)隊(duì)列目錄/var/spool/postfix/maildrop/默認(rèn)定時(shí)任務(wù)執(zhí)行時(shí)會(huì)給root發(fā)郵件,如果郵件服務(wù)不開(kāi),就會(huì)把郵件推到上述目錄。當(dāng)定時(shí)任務(wù)結(jié)尾不加>/dev/null 2>&1的時(shí)候,定時(shí)任務(wù)就會(huì)在上述目錄存大量小文件

    1.2 定時(shí)任務(wù)的系統(tǒng)配置文件/etc/crontab

    [root@chensiqi1 ~]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed

    SHELL=/bin/bash #shell解釋器
    PATH=/sbin:/bin:/usr/sbin:/usr/bin #PATH環(huán)境變量
    MAILTO=root #定義如果任務(wù)有輸出,發(fā)給哪個(gè)用戶,默認(rèn)發(fā)給root用戶
    HOME=/ #定時(shí)任務(wù)執(zhí)行命令從根目錄開(kāi)始

    輪詢的日志(日志輪詢):周期性切割日志
    系統(tǒng)的定時(shí)任務(wù)+logrotate

    [root@chensiqi1 ~]# cat /etc/cron.daily/logrotate #!/bin/sh /usr/sbin/logrotate /etc/logrotate.conf EXITVALUE=$? if [ $EXITVALUE != 0 ]; then/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]" fi exit 0 [root@chensiqi1 ~]ll /var/log/messages* -rw-------. 1 root root 58049 Feb 10 23:18 /var/log/messages -rw-------. 1 root root 1492005 Jan 2 06:51 /var/log/messages-20170102 -rw-------. 1 root root 633737 Jan 8 08:02 /var/log/messages-20170108 -rw-------. 1 root root 1594144 Feb 4 04:25 /var/log/messages-20170204 -rw-------. 1 root root 21512 Feb 6 03:41 /var/log/messages-20170206 [root@chensiqi1 ~]# ll /var/log/secure* -rw-------. 1 root root 4810 Feb 10 22:39 /var/log/secure -rw-------. 1 root root 64822 Jan 2 06:27 /var/log/secure-20170102 -rw-------. 1 root root 14187 Jan 8 07:22 /var/log/secure-20170108 -rw-------. 1 root root 13540 Jan 12 00:17 /var/log/secure-20170204 -rw-------. 1 root root 5723 Feb 6 02:50 /var/log/secure-20170206

    1.3 企業(yè)生產(chǎn)場(chǎng)景如何調(diào)試crontab定時(shí)任務(wù)

    1.3.1 增加執(zhí)行任務(wù)頻率調(diào)試任務(wù)(某些任務(wù)不能用于生產(chǎn)環(huán)境)

    1,在調(diào)試時(shí),把任務(wù)執(zhí)行頻率調(diào)快一點(diǎn),如:每分鐘,每5分鐘執(zhí)行一次,或者比當(dāng)前時(shí)間推遲5分鐘以后,看能否執(zhí)行,是不是按照你想象的去執(zhí)行了,如果正常沒(méi)問(wèn)題了,在改成需要的任務(wù)的執(zhí)行時(shí)間。

    強(qiáng)調(diào):有些計(jì)劃任務(wù)是不允許頻繁執(zhí)行的,例如:定時(shí)往數(shù)據(jù)庫(kù)里插入數(shù)據(jù),這樣的任務(wù)就要在測(cè)試機(jī)上測(cè)試好,然后部署到正式線上,這樣正式工作出問(wèn)題的機(jī)會(huì)就少了。

    規(guī)范的公司開(kāi)發(fā)和運(yùn)維人員操作流程,個(gè)人的開(kāi)發(fā)配置環(huán)境-->辦公室的測(cè)試環(huán)境-->idc機(jī)房的測(cè)試環(huán)境-->idc機(jī)房的正式環(huán)境。

    使用log文件調(diào)試任務(wù)

            • /bin/sh /server/scripts/del_sys_file.sh >/tmp/file.log 2>&1

    1.3.2 調(diào)整系統(tǒng)時(shí)間調(diào)試任務(wù)(不能用于生產(chǎn)環(huán)境)

    如字面意思,調(diào)整系統(tǒng)時(shí)間,以達(dá)到接近觸發(fā)計(jì)劃任務(wù)的目的進(jìn)行調(diào)試。

    1.3.3 通過(guò)腳本日志輸出調(diào)試定時(shí)任務(wù)

    在腳本中加入日志輸出,然后把輸出打到指定的日志中,然后觀察日志內(nèi)容結(jié)果,看是否執(zhí)行或正確執(zhí)行。或像下面的內(nèi)容把腳本結(jié)果定向到一個(gè)log文件里,重定向>即可,不需要>>追加,這樣日志就不會(huì)一直變大,如/app/log.log。

    #study task by chensiqi at 20170211 00 09,14 * * 0,6 /bin/sh /server/scripts/chensiqi.sh >/app/log.log 2>&1 也可以在腳本里面echo 1 >/tmp/a.log 腳本中加輸出 [root@chensiqi ~]# cat tar.sh cd / tar zcvf /tmp/etc_$(date +%Y%m%d%H).tar.gz ./etc >/tmp/tmp.log 2>&1

    sh -x 顯示腳本的執(zhí)行過(guò)程

    [root@chensiqi ~]# /bin/sh /server/scripts/chensiqi.sh 2017-02-11 [root@chensiqi ~]# /bin/sh -x /server/scripts/chensiqi.sh + date +%F 2017-02-11

    1.3.4 注意環(huán)境變量導(dǎo)致的定時(shí)任務(wù)故障

    PATH
    在調(diào)試java程序任務(wù)的時(shí)候,注意環(huán)境變量,把環(huán)境變量的定義加到腳本里。
    例:

    [root@chensiqi ~]# cat /scripts/resin/shell/Task.sh #!/bin/bash export JAVA_HOME=/application/jdk1.6 export PATH=$JAVA_HOME/bin:$PATH export SH_HOME=/application/resin/webapps/ROOT/ export LIB=$SH_HOME/WEB-INF/lib 以下省略...定時(shí)任務(wù): 00 09,14 * * * nohup /scripts/resin/shell/Task.sh & >/app/log.log 2>&1 提示:命令也要盡可能寫全路徑。

    1.3.5 通過(guò)crond定時(shí)任務(wù)服務(wù)日志調(diào)試定時(shí)任務(wù)

    查看定時(shí)任務(wù)服務(wù)日志

    [root@chensiqi1 ~]# tail -f /var/log/cron Feb 10 23:50:01 chensiqi1 CROND[15949]: (root) CMD (/usr/lib64/sa/sa1 1 1) Feb 10 23:53:01 chensiqi1 CROND[15955]: (root) CMD (/usr/lib64/sa/sa2 -A) Feb 11 00:00:01 chensiqi1 CROND[15987]: (root) CMD (/usr/lib64/sa/sa1 1 1) Feb 11 00:01:01 chensiqi1 CROND[15992]: (root) CMD (run-parts /etc/cron.hourly) Feb 11 00:01:01 chensiqi1 run-parts(/etc/cron.hourly)[15992]: starting 0anacron Feb 11 00:01:01 chensiqi1 anacron[16003]: Anacron started on 2017-02-11 Feb 11 00:01:01 chensiqi1 anacron[16003]: Jobs will be executed sequentially Feb 11 00:01:01 chensiqi1 anacron[16003]: Normal exit (0 jobs run) Feb 11 00:01:01 chensiqi1 run-parts(/etc/cron.hourly)[16005]: finished 0anacron Feb 11 00:10:01 chensiqi1 CROND[16008]: (root) CMD (/usr/lib64/sa/sa1 1 1)

    1.3.6 其他稀奇古怪的問(wèn)題調(diào)試的辦法

    直接命令行執(zhí)行無(wú)問(wèn)題而放到定時(shí)任務(wù)就不行
    綜合前邊1-5的方法就可以解決幾乎所有遇到的問(wèn)題了,此類問(wèn)題主要是多看crond服務(wù)日志,并且把程序輸出到指定日志分析。

    轉(zhuǎn)載于:https://www.cnblogs.com/tianakong/p/9962413.html

    總結(jié)

    以上是生活随笔為你收集整理的Linux实战教学笔记13:定时任务补充的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。