zoukankan      html  css  js  c++  java
  • [转]bing壁纸天天换 初识shell魅力

    原文链接:http://www.cnblogs.com/atskyline/p/3679522.html

      原文的程序跑在window上,curl的使用不太一样,想要获取的图片也不太一样。修改后的代码如下:

    #!/bin/bash
     
    # export DBUS_SESSION_BUS_ADDRESS environment variable useful when the script is set as a cron job
    PID=$(pgrep gnome-session)
    export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)
     
     
    # $bing is needed to form the fully qualified URL for
    # the Bing pic of the day
    bing="cn.bing.com"
     
    # $xmlURL is needed to get the xml data from which
    # the relative URL for the Bing pic of the day is extracted
    #
    # The mkt parameter determines which Bing market you would like to
    # obtain your images from.
    # Valid values are: en-US, zh-CN, ja-JP, en-AU, en-UK, de-DE, en-NZ, en-CA.
    #
    # The idx parameter determines where to start from. 0 is the current day,
    # 1 the previous day, etc.
    xmlURL="-d 'format=xml&idx=0&n=1&mkt=zh-CN' --get  http://cn.bing.com/HPImageArchive.aspx"
     
    # $saveDir is used to set the location where Bing pics of the day
    # are stored.  $HOME holds the path of the current user's home directory
    saveDir="$HOME/Pictures/Bing/"
     
    # Create saveDir if it does not already exist
    mkdir -p $saveDir
     
    # Set picture options
    # Valid options are: none,wallpaper,centered,scaled,stretched,zoom,spanned
    picOpts="zoom"
     
    # The desired Bing picture resolution to download
    # Valid options: "_1024x768" "_1280x720" "_1366x768" "_1920x1200"
    desiredPicRes="_1920x1200"
     
    # The file extension for the Bing pic
    picExt=".jpg"
     
    # Extract the relative URL of the Bing pic of the day from
    # the XML data retrieved from xmlURL, form the fully qualified
    # URL for the pic of the day, and store it in $picURL
     
    # Form the URL for the desired pic resolution
    desiredPicURL=$bing$(echo $(curl  $xmlURL) | grep -oP "<urlBase>(.*)</urlBase>" | cut -d ">" -f 2 | cut -d "<" -f 1)$desiredPicRes$picExt
     
    # Form the URL for the default pic resolution
    defaultPicURL=$bing$(echo $(curl  $xmlURL) | grep -oP "<url>(.*)</url>" | cut -d ">" -f 2 | cut -d "<" -f 1)
     
    # $picName contains the filename of the Bing pic of the day
     
    # Attempt to download the desired image resolution. If it doesn't
    # exist then download the default image resolution
    if wget --quiet --spider "$desiredPicURL"
    then
     
        # Set picName to the desired picName
        picName=${desiredPicURL##*/}
        # Download the Bing pic of the day at desired resolution
        curl -s -o $saveDir$picName $desiredPicURL
    else
        # Set picName to the default picName
        picName=${defaultPicURL##*/}
        # Download the Bing pic of the day at default resolution
        curl -s -o $saveDir$picName $defaultPicURL
    fi
     
    # Set the GNOME3 wallpaper
    gsettings set org.gnome.desktop.background picture-uri "file://$saveDir$picName"
     
    # Set the GNOME 3 wallpaper picture options
    gsettings set org.gnome.desktop.background picture-options $picOpts
     
    # Remove pictures older than 30 days
    #find $saveDir -atime 30 -delete
     
    # Exit the script
    exit
    

      然后用crontab,做成每日任务,就可以天天换bing壁纸了。crontab代码如下:

    # To define the time you can provide concrete values for
    # minute (m), hour (h), day of month (dom), month (mon),
    # and day of week (dow) or use '*' in these fields (for 'any').# 
    # Notice that tasks will be started based on the cron's system
    # daemon's notion of time and timezones.
    # 
    # For example, you can run a backup of all your user accounts
    # at 5 a.m every week with:
    # 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
    #
    # m h  dom mon dow   command
    15 1 * * * /home/kuizhi/program/bingWallPaper.sh
    

      

  • 相关阅读:
    Oracle 多表查询优化
    FZU 2150 Fire Game
    HDU 1058 Humble Numbers
    UVA 11624 Fire!
    POJ 1321 棋盘问题
    线性表的基本操作
    POJ 3414 Pots(广搜输出路径)
    HDU 1495 非常可乐
    POJ 1847 Tram
    POJ 3159 Candies(查分约束)
  • 原文地址:https://www.cnblogs.com/qiuyeyaozhuai/p/4037123.html
Copyright © 2011-2022 走看看