[分享] 自動換桌布腳本,支援 Unity/Gnome3 [論壇 - Ubuntu 與 GNOME]
正在瀏覽:
1 名遊客
回覆: [分享] 自動換桌布腳本,支援 Unity/Gnome3 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
管理員
![]() ![]() 註冊日期:
2011/3/11 6:32 所屬群組:
討論區管理群 等級: 44
HP : 216 / 1084
![]() |
K.W. 寫到: 建議使用 Dolphin 檔案管理軟體 poloshiao 寫到:sh 自動桌布 因為 shebang 所以效果相同 poloshiao 寫到: 在現行的 Ubuntu 下不可能是此問題 就算是這個問題也頂多出現 file not found 而且很明顯樓煮在終端機底下執行是正常的 poloshiao 寫到: poloshiao 寫到: root 身份執行的 dconf 編輯器是編輯 root 自己的設定,並非全系統設定值 另外明明 nautilus 設定頁面中就已經有了不需要改 dconf
2013/6/14 13:43
|
||||||||||
本篇發表文章以「創用CC BY 3.0 或更新之台灣地區版本」授權條款釋出,如何使用敬請參考
Creative Commons — 姓名標示 3.0 台灣 — CC BY 3.0 TW http://creativecommons.org/licenses/by/3.0/tw/ 「你不懂的東西就不要亂講,被懂得人看破手腳就算了,騙不懂的人誤導別人,還要別人把你當成大師,這就真的是說不過去了。」 by Allen Own 出處 http://www.plurk.com/p/i4uogm 自由知識創作平台介紹 https://docs.google.com/document/d/1MGG6lW_0qCgH4U785R-IwSc_INdoBGej1l-JxiA4gPE 如何建立新的自由知識創作平台文件 https://docs.google.com/document/d/11NdzOW2lGYksfyQIcPMPye5tlmj1J0QTkgPTmQvIvKA |
|||||||||||
![]() |
回覆: [分享] 自動換桌布腳本,支援 Unity/Gnome3 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() 註冊日期:
2009/12/6 10:32 所屬群組:
已註冊使用者 等級: 71
HP : 1053 / 1756
![]() |
root 身份執行的 dconf 編輯器是編輯 root 自己的設定,並非全系統設定值 root 身份 什麼時候 執行了 dconf 編輯器 ? 另外明明 nautilus 設定頁面中就已經有了 人家新手問問題嘛 附個圖如何
2013/6/14 20:51
|
||||||||||
![]() |
回覆: [分享] 自動換桌布腳本,支援 Unity/Gnome3 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員三級
![]() ![]() 註冊日期:
2009/8/27 21:33 所屬群組:
已註冊使用者 等級: 13
HP : 0 / 312
![]() |
小弟原先以為是 K.W. 大大忘記設定可執行,看來小弟猜錯了,問題比小弟想的複雜。
K.W. 寫到: 首先,這裡不能用「sh 自動桌布」,你注意一下這一行: K.W. 寫到: 由於 Ubuntu 的 sh 連結到 dash, 所以「sh 自動桌布」會使系統以 dash 執行自動桌布這個腳本; 然而小弟寫這個腳本時使用的是 bash 語法,這樣就會造成難以預料的結果。 請改用「bash 自動桌布」,結果應該就會正常了。 另外,請在終端機裡下這個命令:「echo $0」,看看回應是不是「bash」。 是的話,請先進入自動桌布的目錄,然後下這個命令:「./自動桌布」。 ( 請注意基於安全理由,Unix/Linux 系統在呼叫可執行檔案時, 不像 DOS 那樣會在當下的目錄裡尋找,所以前面一定要加上「./」。) 結果應該是會正常執行的,如果這時候跳出 gedit 來,那你的系統可能問題大了。 K.W. 寫到:... 嗯... 詢問的視窗跟底下這張圖按鈕相同嗎? ![]() 你按下的按鈕是最左邊的「在終端機中執行(T)」還是最右邊的「執行(R)」? 還是兩個你都試過?
2013/6/15 14:40
|
||||||||||
![]() |
回覆: [分享] 自動換桌布腳本,支援 Unity/Gnome3 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
管理員
![]() ![]() 註冊日期:
2011/3/11 6:32 所屬群組:
討論區管理群 等級: 44
HP : 216 / 1084
![]() |
自由車自由人 寫到: 他在終端機中執行應該是正常的 自由車自由人 寫到:K.W. 寫到:... 他的意思應該是雖然改成沒次都詢問但是還是不會問就用 Gedit 打開
2013/6/15 14:48
|
||||||||||
本篇發表文章以「創用CC BY 3.0 或更新之台灣地區版本」授權條款釋出,如何使用敬請參考
Creative Commons — 姓名標示 3.0 台灣 — CC BY 3.0 TW http://creativecommons.org/licenses/by/3.0/tw/ 「你不懂的東西就不要亂講,被懂得人看破手腳就算了,騙不懂的人誤導別人,還要別人把你當成大師,這就真的是說不過去了。」 by Allen Own 出處 http://www.plurk.com/p/i4uogm 自由知識創作平台介紹 https://docs.google.com/document/d/1MGG6lW_0qCgH4U785R-IwSc_INdoBGej1l-JxiA4gPE 如何建立新的自由知識創作平台文件 https://docs.google.com/document/d/11NdzOW2lGYksfyQIcPMPye5tlmj1J0QTkgPTmQvIvKA |
|||||||||||
![]() |
回覆: [分享] 自動換桌布腳本,支援 Unity/Gnome3 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員三級
![]() ![]() 註冊日期:
2008/4/25 9:32 所屬群組:
已註冊使用者 等級: 9
HP : 0 / 219
![]() |
改成英文檔名後,就可以在直接點擊兩次,出現詢問的視窗,但中文還是不行。
2013/6/18 11:18
|
||||||||||
![]() |
回覆: [分享] 自動換桌布腳本,支援 Unity/Gnome3 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() 註冊日期:
2009/12/6 10:32 所屬群組:
已註冊使用者 等級: 71
HP : 1053 / 1756
![]() |
2013/6/18 12:19
|
||||||||||
![]() |
回覆: [分享] 自動換桌布腳本,支援 Unity/Gnome3 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
管理員
![]() ![]() 註冊日期:
2011/3/11 6:32 所屬群組:
討論區管理群 等級: 44
HP : 216 / 1084
![]() |
K.W. 寫到: 確定有這個問題嗎? 確定的話就可以像軟體上游或 Launchpad.net 回報軟體缺陷,這樣以後就有機會修好
2013/6/18 15:41
|
||||||||||
本篇發表文章以「創用CC BY 3.0 或更新之台灣地區版本」授權條款釋出,如何使用敬請參考
Creative Commons — 姓名標示 3.0 台灣 — CC BY 3.0 TW http://creativecommons.org/licenses/by/3.0/tw/ 「你不懂的東西就不要亂講,被懂得人看破手腳就算了,騙不懂的人誤導別人,還要別人把你當成大師,這就真的是說不過去了。」 by Allen Own 出處 http://www.plurk.com/p/i4uogm 自由知識創作平台介紹 https://docs.google.com/document/d/1MGG6lW_0qCgH4U785R-IwSc_INdoBGej1l-JxiA4gPE 如何建立新的自由知識創作平台文件 https://docs.google.com/document/d/11NdzOW2lGYksfyQIcPMPye5tlmj1J0QTkgPTmQvIvKA |
|||||||||||
![]() |
回覆: [分享] 自動換桌布腳本,支援 Unity/Gnome3 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員三級
![]() ![]() 註冊日期:
2009/8/27 21:33 所屬群組:
已註冊使用者 等級: 13
HP : 0 / 312
![]() |
小弟這個程式發行新版本了!
並且放到了 GitHub 上 詳情請見本討論串首篇 GitHub 專案網頁:robertmodesty/make-slideshow-wallpaper - GitHub 新版程式碼: mksldshw - - - - 8< - - - - - - - - - - 請自本虛線下方剪下 - - - - - - - - - - - - - - - #!/bin/bash ########## Make Slideshow Wallpaper by Freedman ########## readonly _OutputFile=background.xml readonly _StaticTime=595.0 readonly _TransitionTime=5.0 readonly _FileType="gif|jpg|png|bmp" # readonly _SortFiles=Alphabetic readonly _SortFiles=Random readonly _Depth=30 # at most levels of directories been include # The line under here helps to setup the wallpaper automaticlly, # comment it with octothorpe if you want do that yourself. readonly _Autoset=on _AutosetPath=$HOME/.config readonly _StartNow=on function find_image_files() { BOARD_ImgFils=$( find -L $PWD \ -maxdepth $_Depth \ -regextype posix-extended \ -iregex \ ".*\.($_FileType)" \ 2> /dev/null ) if [ "$_SortFiles" == "Random" ] ; then BOARD_ImgFils=$( echo -e "$BOARD_ImgFils" | sort -R ) elif [ "$_SortFiles" == "Alphabetic" ] ; then BOARD_ImgFils=$( echo -e "$BOARD_ImgFils" | sort ) fi } function error_exit_if_too_less_image_file() { local FilTotl=$( echo -e "$BOARD_ImgFils" \ | wc -l \ | cut -d " " -f1 ) if [ $FilTotl -lt 2 ] ; then /usr/bin/zenity --warning \ --title='Error!' \ --text='Need two image files at least!' \ > /dev/null 2>&1 echo -e '\nError!\nNeed two image files at least!\n' exit 1 fi } function generate_slide_show_xml() { eval $( date +" local Yer=%Y Mnth=%m Day=%d Hour=%H Minute=%M Second=%S ") local Head=" <static>\n <duration>$_StaticTime</duration>\n <file>" local Tail="</file>\n </static>" local FrmHead=" <transition>\n <duration>$_TransitionTime</duration>\n <from>" local FrmTail="</from>" local ToHead=" <to>" local ToTail="</to>\n </transition>" local FstFil if [ "$_StartNow" != "on" ] ; then Hour=00 Minute=00 Second=00 ; fi echo "<background>" echo " <starttime>" echo " <year>$Yer</year>" echo " <month>$Mnth</month>" echo " <day>$Day</day>" echo " <hour>$Hour</hour>" echo " <minute>$Minute</minute>" echo " <second>$Second</second>" echo " </starttime>" echo "<!-- This animation starts at $Yer/$Mnth/$Day $Hour:$Minute:$Second. -->" if [ "$_TransitionTime" == "0" ] ; then echo -e "$BOARD_ImgFils" | sed "s|^\(.*\)$|$Head\0$Tail|" else FstFil=$( echo -e "$BOARD_ImgFils" | head -n 1 ) echo -e "${Head}${FstFil}${Tail}" echo -e "${FrmHead}${FstFil}${FrmTail}" echo -e "$BOARD_ImgFils" \ | tail -n +2 \ | sed "s|^\(.*\)$|$ToHead\0$ToTail\n$Head\0$Tail\n$FrmHead\0$FrmTail|" echo -e "${ToHead}${FstFil}${ToTail}" fi echo "</background>" } function distribution_n_release() { local distri reles issue distri="$(lsb_release -i 2> /dev/null)" distri="$(echo $distri)" distri="${distri##* }" issue="$(head -n1 /etc/issue)" issue="$(echo $issue)" issue="${issue%% *}" if [ -z "$distri" ] ; then distri="$issue" reles="$( grep [0-9] /etc/issue \ | head -n1 \ | sed 's/^[^0-9]*//' )" elif [ "$issue" == "LMDE" ] ; then distri="$issue" reles="$(lsb_release -r)" reles="$(echo $reles)" reles="${reles##* }" else reles="$(lsb_release -r)" reles="$(echo $reles)" reles="${reles##* }" fi echo $distri $reles } function move_output_file() { if [ -z "$_AutosetPath" ] ; then _AutosetPath="$PWD" else mkdir -p "$_AutosetPath" mv -f "$_OutputFile" "$_AutosetPath/$_OutputFile" fi } function set_background() { local x distro distro="$( distribution_n_release )" case "$distro" in "Ubuntu 15.04"|"Ubuntu 14.04"|"Ubuntu 12.04"|"Fedora 22"*) case "$DESKTOP_SESSION" in ubuntu*|gnome*) move_output_file gsettings set org.gnome.desktop.background picture-uri \ "file://$_AutosetPath/$_OutputFile" ;; cinnamon*) move_output_file gsettings set org.cinnamon.desktop.background picture-uri \ "file://$_AutosetPath/$_OutputFile" ;; mate) move_output_file gsettings set org.mate.background picture-filename \ "$_AutosetPath/$_OutputFile" ;; esac ;; "Ubuntu 10."*) if [ "$DESKTOP_SESSION" == "gnome" ] ; then move_output_file gconftool --set --type=string \ /desktop/gnome/background/picture_filename \ "$_AutosetPath/$_OutputFile" fi ;; "Debian 8"*) case "$XDG_CURRENT_DESKTOP" in GNOME*) move_output_file gsettings set org.gnome.desktop.background picture-uri \ "file://$_AutosetPath/$_OutputFile" ;; X-Cinnamon) move_output_file gsettings set org.cinnamon.desktop.background picture-uri \ "file://$_AutosetPath/$_OutputFile" ;; MATE) move_output_file gsettings set org.mate.background picture-filename \ "$_AutosetPath/$_OutputFile" ;; esac ;; "LinuxMint 17"*|"LMDE 2") if [ "$XDG_CURRENT_DESKTOP" == "X-Cinnamon" ] ; then move_output_file gsettings set org.cinnamon.desktop.background picture-uri \ "file://$_AutosetPath/$_OutputFile" elif [ "$DESKTOP_SESSION" == "mate" ] ; then move_output_file gsettings set org.mate.background picture-filename \ "$_AutosetPath/$_OutputFile" fi ;; *) x=$(gnome-session --version) x=${x#* } if [ "${x%%.*}" == "3" ] ; then move_output_file gsettings set org.gnome.desktop.background picture-uri \ "file://$_AutosetPath/$_OutputFile" fi ;; esac } function main() { find_image_files error_exit_if_too_less_image_file generate_slide_show_xml > "$_OutputFile" if [ "$_Autoset" == "on" ] ; then set_background ; fi } main
2015/8/23 21:43
|
||||||||||
![]() |
您可以查看帖子.
您不可發帖.
您不可回覆.
您不可編輯自己的帖子.
您不可刪除自己的帖子.
您不可發起投票調查.
您不可在投票調查中投票.
您不可上傳附件.
您不可不經審核直接發帖.