• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉(zhuǎn),開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            Crontab與shell不得不說的故事

            Posted on 2011-05-23 08:35 S.l.e!ep.¢% 閱讀(479) 評論(0)  編輯 收藏 引用 所屬分類: Unix

            >>Crontab與shell不得不說的故事


            最近做一個計劃任務(wù)老出毛病,腳本手動執(zhí)行一切正常,在crontab里面就不能正常執(zhí)行,檢查問題的時候始終不得方向,之后查看郵件才讓我發(fā)現(xiàn)是crontab的環(huán)境變量設(shè)置問題。現(xiàn)在知道要怎么修改了,哈哈,拿出來與大家分享,這個小問題還是比較值得留意一下的。

            Crontab執(zhí)行時不會讀取用戶的環(huán)境變量,所以有時在crontab中添加了腳本任務(wù)后經(jīng)常會發(fā)現(xiàn)執(zhí)行失敗,比如說執(zhí)行ifconfig找不到這個命令之類的。大多數(shù)情況下是可能由于環(huán)境變量設(shè)置問題,如果有其他具體情況可以看root的mail里面郵件。因此,在編寫腳本時要聲明環(huán)境變量,防止發(fā)生此類錯誤。

            在腳本開頭第一行#!/bin/bash和腳本注釋下添加兩行內(nèi)容,如下:

            ?
            1
            2
            3
            4
            5
            #!/bin/bash
            #這里放注釋
            PATH= /bin : /sbin : /usr/bin : /usr/sbin : /usr/local/bin : /usr/local/sbin
            export PATH
            #下面就是腳本的主要內(nèi)容,可以聲明變量可以寫函數(shù)之類的

            注意要在所有其他非注釋內(nèi)容之前,這樣做之后腳本在crontab中就能正常執(zhí)行了。

            網(wǎng)上還有說法說用source ~/.bash_profile,我嘗試之后沒成功,不知道是我添加的地方錯了還是咋的。

            另外在給crontab添加任務(wù)時不要忘了盡量讓信息返回,才能更早發(fā)現(xiàn)問題更快解決問題。

            crontab的前面5個字段的意思分別是:

            分鐘 (0-59)

            小時 (0-23)

            日期 (1-31)

            月份 (1-12)

            星期 (0-6)//0代表星期天

            除了數(shù)字還有幾個個特殊的符號就是”*”、”/”和”-”、”,”,*代表所有的取值范圍內(nèi)的數(shù)字,”/”代表每的意思,”*/5″表示每5個單位,”-”代表從某個數(shù)字到某個數(shù)字,”,”分開幾個離散的數(shù)字,比如下面幾個例子:

            在12:00和13:00分別執(zhí)行一次某命令,格式如下:

            ?
            1
            00 12,13 * * * command

            每兩個小時執(zhí)行一次命令

            ?
            1
            0 * /2 * * * command

            晚上11點到早上8點之間每兩個小時,早上八點

            ?
            1
            0 23-7 /2 ,8 * * * command

            每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點

            ?
            1
            0 11 4 * 1-3 command

            1月1日早上4點

            ?
            1
            0 4 1 1 * command

            命令之后可以將命令的信息重定向。Linux中重定向規(guī)則如下(不僅僅可用于crontab):

            ?
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            command > filename 把標(biāo)準(zhǔn)輸出重定向到一個新文件中
            command >> filename 把標(biāo)準(zhǔn)輸出重定向到一個文件中(追加)
            command 1 > fielname 把標(biāo)準(zhǔn)輸出重定向到一個文件中
            command > filename 2>&1 把標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤一起重定向到一個文件中
            command 2 > filename 把標(biāo)準(zhǔn)錯誤重定向到一個文件中
            command 2 >> filename 把標(biāo)準(zhǔn)輸出重定向到一個文件中(追加)
            command >> filename 2>&1 把標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤一起重定向到一個文件中(追加)
            command < filename >filename2 把 command 命令以filename文件作為標(biāo)準(zhǔn)輸入,以filename2文件作為標(biāo)準(zhǔn)輸出
            command < filename 把 command 命令以filename文件作為標(biāo)準(zhǔn)輸入
            command << delimiter 把從標(biāo)準(zhǔn)輸入中讀入,直至遇到delimiter分界符
            command <&m 把文件描述符m作為標(biāo)準(zhǔn)輸入
            command >&m 把標(biāo)準(zhǔn)輸出重定向到文件描述符m中
            command <&- 把關(guān)閉標(biāo)準(zhǔn)輸入
            command 2>&1 把 command 命令標(biāo)準(zhǔn)錯誤重定向到標(biāo)準(zhǔn)輸出
            久久精品国产亚洲av影院| 久久久久国产精品嫩草影院| 亚洲午夜精品久久久久久人妖| 精品久久久久久无码专区| 久久精品极品盛宴观看| 一本久久久久久久| 蜜臀久久99精品久久久久久小说 | AV色综合久久天堂AV色综合在| 狠狠精品久久久无码中文字幕 | 久久www免费人成精品香蕉| 久久综合九色综合欧美狠狠| 久久人人爽人人爽人人AV东京热| 久久久久亚洲精品无码网址 | 成人久久免费网站| 日韩欧美亚洲综合久久影院d3| 亚洲综合久久久| 亚洲综合日韩久久成人AV| 丰满少妇高潮惨叫久久久| 日韩精品久久久久久久电影蜜臀| 激情五月综合综合久久69| 999久久久免费精品国产| 亚洲国产精品婷婷久久| 国产精品国色综合久久| 欧美精品久久久久久久自慰| 国产精品99精品久久免费| 亚洲AV无码久久精品蜜桃| 久久天天躁狠狠躁夜夜av浪潮| 国产精品美女久久久m| 中文字幕无码av激情不卡久久| 久久久精品人妻一区二区三区蜜桃 | 九九久久99综合一区二区| 合区精品久久久中文字幕一区 | 久久高清一级毛片| 久久天天躁狠狠躁夜夜2020老熟妇 | 国产一区二区精品久久| 成人综合伊人五月婷久久| 久久久人妻精品无码一区| 久久久久国产一区二区| 大香伊人久久精品一区二区| 少妇被又大又粗又爽毛片久久黑人| 久久精品国产精品亚洲下载|