Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1151910
  • 博文数量: 341
  • 博客积分: 12744
  • 博客等级: 上将
  • 技术积分: 4040
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-12 09:34
文章分类
文章存档

2014年(1)

2013年(10)

2012年(17)

2011年(63)

2010年(102)

2009年(107)

2008年(41)

分类: LINUX

2010-04-11 10:49:18

又想用conky了,以前那个脚本太挫了,新写了一个
气象信息通过得到的
这个是海淀区的
文件通过异步获取
脚本如下,带一个参数,1代表今天天气,2代表明天,以此类推

#!/bin/bash 

WEATHER_FILE=/tmp/rss.php\?id\=54399
get_weather()
{
    if [ $1 -eq -1 ]
    then
        weather=`cat $WEATHER_FILE|grep|head -n 1|awk '{print $2" "$3}'|awk -F'<' '{print $1}'|sed -n 's/\℃/度/g;p'|sed -n 's/\([^0-9][^0-9]*\)\([0-9][0-9]*\)\([^0-9][^0-9]*\)\([0-9][0-9]*\)\([^0-9][^0-9]*\)/\1\4\3\2\5/g;p'`
    elif [ $1 -ge 0 ] && [ $1 -le 2 ]
    then
        line=`expr 2 + $1`
        weather=`cat $WEATHER_FILE|grep|head -n $line|tail -n 1|awk '{print $2" "$3}'|awk -F'<' '{print $1}'|sed -n 's/\℃/度/g;p'`
    elif [ $1 -eq 3 ]
    then
        weather=`cat $WEATHER_FILE|grep|tail -n 1|awk '{print $2" "$3}'|awk -F'<' '{print $1}'|sed -n 's/\℃/度/g;p'`
    else
        weather="暂无信息"
    fi
    echo $weather
}

if [ -f $weather ]
then
    date_next=`cat $WEATHER_FILE|grep|sed -n '2p'|sed -n 's/.*月\([0-9][0-9]*\)日.*/\1/g;p'`
    date_now=`date|sed -n 's/.*月[^0-9][^0-9]*\([0-9][0-9]*\)日.*/\1/g;p'`
    distance=`expr $date_now - $date_next`

    case $1 in
        [0-9] )
            get_weather `expr $distance + $1 - 1`
            ;;
        * )
            echo "暂无信息"
            ;;
    esac
else
    echo "暂无信息"
fi


阅读(1247) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~