• <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>

            Onway

            我是一只菜菜菜菜鳥(niǎo)...
            posts - 61, comments - 56, trackbacks - 0, articles - 34

            bash script寫的gnome桌面小鬧鐘

            Posted on 2012-03-09 18:39 Onway 閱讀(700) 評(píng)論(2)  編輯 收藏 引用 所屬分類: 碼兒快跑
            上圖好像沒(méi)什么意思吧?zenity的界面。
                  

            /Files/Onway/oalarm.bash.txt

            oalarm文檔

            概要:
                oalarm是一個(gè)基于gnome,mplayer,at,date,zenity等命令的,使用bash script寫成的簡(jiǎn)陋桌面鬧鐘。

            功能:
                定時(shí)任務(wù)的新建,查看,延遲,刪除,提醒。

            安裝要求:
                存在gnome-session進(jìn)程,/usr/bin下存在at,zenity,mplayer程序,$HOME目錄下存在.config/autostart和.local/share/applications兩個(gè)目錄。

            安裝:
                下載oalarm.bash之后,添加運(yùn)行權(quán)限,在桌面圖形環(huán)境下運(yùn)行腳本(不需要root權(quán)限)。這時(shí)會(huì)檢查zenity命令和gnome-session進(jìn)程的存在。gnome-session的檢查是為了保證能使用zenity命令創(chuàng)建界面。如果缺乏任何一個(gè),則在標(biāo)準(zhǔn)輸出后直接退出。

                首次運(yùn)行腳本會(huì)出現(xiàn)安裝選項(xiàng)。
                安裝過(guò)程會(huì)先在/usr/bin目錄下檢查at,mplayer,zenity三個(gè)命令,如果缺少任何一個(gè),標(biāo)準(zhǔn)輸出錯(cuò)誤后退出。
                安裝過(guò)程還會(huì)檢查兩個(gè)目錄:$HOME/.config/autostart和$HOME/.local/share/applications,如果缺乏任何一個(gè),安裝失敗。在這兩個(gè)目錄會(huì)各寫入一個(gè).desktop文件,分別用于登錄圖形界面后運(yùn)行一次腳本檢查過(guò)期任務(wù)和在應(yīng)用附件欄目添加運(yùn)行圖標(biāo)。分別執(zhí)行的命令是:
                $HOME/.oalarm/oalarm.bash --check
                $HOME/.oalarm/oalarm.bash --start

                其后會(huì)在$HOME目錄下創(chuàng)建隱藏目錄.oalarm和兩個(gè)在子目錄past,wait,分別用于存放過(guò)期任何和等待任務(wù)。oalarm.bash會(huì)復(fù)制自身到該目錄下。

                如果存在/usr/share/sounds/gnome/default/alerts/bark.ogg該聲音文件,則會(huì)被復(fù)制到.oalarm目錄下并命名為voice,用于提示任務(wù)時(shí)使用mplayer進(jìn)行播放。可以將voice文件替換為喜歡的提示聲音。

            卸載:
                安裝后啟動(dòng)oalarm,會(huì)出現(xiàn)卸載選項(xiàng)。
                卸載行為是:
                刪掉.oalarm目錄和兩個(gè).desktop文件。記得為聲音文件作備份。

            任務(wù)文件格式:
                使用年月日時(shí)分命名。文件內(nèi)第一行為任務(wù)標(biāo)題,新建任務(wù)時(shí)必須填入,第二行至文件尾為任務(wù)內(nèi)容,可選。

            原理:
                下載的oalarm.bash,不帶參數(shù)運(yùn)行,是安裝前使用,安裝后之后可以刪掉。
                從應(yīng)用程序-附件欄目的圖標(biāo)啟動(dòng)是帶--start參數(shù)運(yùn)行$HOME/.oalarm/oalarm.bash。用于新建,查看,延遲和刪除任務(wù)。
                登錄圖形界面后,帶參數(shù)--check自動(dòng)啟動(dòng)$HOME/.oalarm/oalarm.bash,用于檢查關(guān)機(jī)或者登出圖形界面期間到期的任務(wù)。延遲10秒之后開(kāi)始檢查。
                圖形界面登錄期間,如果任務(wù)到期,則由atd守護(hù)進(jìn)程帶--check和任務(wù)文件名兩個(gè)參數(shù)啟動(dòng)$HOME/.oalarm/oalarm.bash。然后oalarm.bash從wait目錄下的文件提取信息進(jìn)行提示。(如果voice文件不存在,則提示沒(méi)有聲音)

                兩個(gè)重要的假定:
                1,使用如下命令判斷使用已經(jīng)登錄圖形界面:
                    ps -eo ruid,comm | grep $UID.*gnome-session
                2,$HOEM/.config/autostart下的.desktop文件指定的程序會(huì)在登錄圖形界面后自動(dòng)運(yùn)行。

            行為:
                在任務(wù)提醒之后選擇延遲和在等待任務(wù)中選擇延遲是有區(qū)別的。如果選擇延遲時(shí)間的時(shí)候取消了,則提醒之后的延遲會(huì)被放棄,任務(wù)被移到過(guò)期任務(wù)。

            bugs:
                1,由于命名任務(wù)文件的時(shí)候沒(méi)考慮到,同一個(gè)時(shí)間只能有一個(gè)任務(wù),否則會(huì)被覆蓋。
                2,選擇時(shí)間的方式有點(diǎn)別扭,但我也不知道怎么辦。
                3,延遲功能必須重新選擇日期時(shí)間,有點(diǎn)不厚道

            關(guān)于:
                oalarm 0.1.0
                By Onway 2012-03-06

                debug yourself or report to:
                blog: m.shnenglu.com/onway
                mail: aluohuai@126.com

                如果本程序讓你錯(cuò)過(guò)了和女友的約會(huì),或者把水燒干了,或者出現(xiàn)其他問(wèn)題,本人概不負(fù)責(zé)

            Feedback

            # re: bash script寫的gnome桌面小鬧鐘  回復(fù)  更多評(píng)論   

            2012-03-24 17:17 by 朱俊
            Linux only?

            # re: bash script寫的gnome桌面小鬧鐘  回復(fù)  更多評(píng)論   

            2012-03-25 13:02 by Onway
            主要滿足$HOEM/.config/autostart下的.desktop文件指定的程序會(huì)在登錄圖形界面后自動(dòng)運(yùn)行,然后其他的一些依賴程序能裝上就應(yīng)該可以了。
            還有我不知道bash和其他shell的區(qū)別。@朱俊
            亚洲狠狠久久综合一区77777| 亚洲欧美日韩中文久久| 丁香五月综合久久激情| 2021久久精品国产99国产精品| 久久91综合国产91久久精品| 久久青青草原精品国产软件| 欧美日韩久久中文字幕| 国产69精品久久久久777| 久久久久久久综合综合狠狠| 亚洲va久久久噜噜噜久久狠狠 | 久久天天躁狠狠躁夜夜av浪潮| 精品人妻伦九区久久AAA片69| 日本福利片国产午夜久久| 久久亚洲高清综合| 99精品久久精品一区二区| 少妇无套内谢久久久久| 国产成人无码精品久久久久免费| 一本一本久久A久久综合精品| 91精品观看91久久久久久| 亚洲αv久久久噜噜噜噜噜| 日批日出水久久亚洲精品tv| 色综合久久中文色婷婷| 人妻精品久久久久中文字幕一冢本| 久久噜噜久久久精品66| 99久久亚洲综合精品成人| 久久国产精品77777| 少妇人妻综合久久中文字幕| 91精品国产色综久久| 国产精品久久久久影视不卡| 久久综合给久久狠狠97色| 99精品久久精品一区二区| 亚洲精品无码专区久久同性男| 国产精品午夜久久| 91久久精品国产91性色也| 久久se精品一区二区| 精品久久久久久久久午夜福利| 久久久久波多野结衣高潮| 久久综合亚洲色HEZYO社区| 久久精品国产AV一区二区三区| 亚洲国产精品狼友中文久久久| 中文精品99久久国产 |