2011年6月22日水曜日

デジタル台風から画像を取ってくる

デジタル台風から画像をとってくる
画像取得シェルスクリプト

#!usr/bin/sh
#images 7day change every 1h or 3h (d7h2)
#by yoshiyoshi
#start time of image year
    echo "write the start time of image. u have to write 0 exp; 1987 87 08 26 00"
    echo "year"
    read y
    echo "yy write the 19yy or 20yy "
    read yy
    echo "month"
    read m
  
    echo "day"
    read d

    echo "hour"
    read h

        time=$y$m$d$h
        echo "$time image"
    echo "$y year $m month $d day $h hour"

mkdir data
mkdir data/$time
#satellite check GMS3orGMS4orGMS5#
#GMS3 step hour s=3
##GMS4 or 5 GOE9  step hour s=1

#time 1989120400 GMS3 to GMS4
#time 1995042800 GMS4 to GMS5
#time 2003052200 GMS5 to GOE9
#time 2005062800 GOE9 to MTS1


#time 1989120400 GMS3 to GMS4
sate=GMS3
nsate=GMS4
z=1989
n=12
e=4


if [ y -gt z ]
#>=z
    then
    if [ m -gt n ]
        then
            if [ d -gt e ]
            then
                sate=$nsate
            else
                echo ""
            fi
        else
        echo ""
    fi
    else
    echo ""
fi


if [ y -gt z ]
#>z
    then
    sate=$nsate
    else
    echo ""
fi

#time 1995042800 GMS4 to GMS5
#sate=GMS4
nsate=GMS5
z=1995
n=04
e=28


if [ y -gt z ]
#>=z
    then
    if [ m -gt n ]
        then
            if [ d -gt e ]
            then
                sate=$nsate
            else
                echo ""
            fi
        else
        echo ""
    fi
    else
    echo ""
fi


if [ y -ge z ]
#>z
    then
    sate=$nsate
    else
    echo ""
fi


#time 2003052200 GMS5 to GOE9
#sate=GMS5
nsate=GOE9
z=2003
n=05
e=22


if [ y -gt z ]
#>=z
    then
    if [ m -gt n ]
        then
            if [ d -gt e ]
            then
                sate=$nsate
            else
                echo ""
            fi
        else
        echo ""
    fi
    else
    echo ""
fi


if [ y -ge z ]
#>z
    then
    sate=$nsate
    else
    echo ""
fi


#time 2005062800 GOE9 to MTS1
#sate=GOE9
nsate=MTS1
z=2005
n=06
e=28


if [ y -gt z ]
#>=z
    then
    if [ m -gt n ]
        then
            if [ d -gt e ]
            then
                sate=$nsate
            else
                echo ""
            fi
        else
        echo ""
    fi
    else
    echo ""
fi


if [ y -ge z ]
#>z
    then
    sate=$nsate
    else
    echo ""
fi

#check time step hour=1 or 3
echo "$sate"
if [ sate -eq GMS3 ]
    then
    s=3
    else
    s=1
fi
echo "timestep  $s hour"

#if sate chage is no working, write yourself
#sate=GMS5

#######################################################
##########day =30 or 31 or 29  & image get#############
#######################################################
case "$m" in
"04" | 06 | 09 | 11 ) for i in  `seq 1 7`
 #month of 30 day #make  7 image
    do
    echo "year $y"
    echo "month $m"
    echo "day $d"
    echo "$i"

if [ $d -le 30 ] #when d<=30
then
      
echo ""
echo "$d"


            ##start###########
            ##time step######
    if [ $s -eq 3 ]
#s=3
    then
    for j in `seq 1 7`
        do
      
        echo "$h"
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file
        
        h=`expr $h + $s`
        #h get 0
        if [ $h -le 9 ]
                then
            h=0$h
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0


        done        
h=00
  

    else
    #s=1
    for j in `seq 1 23`
        do         
        echo "$h"
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file
        
        h=`expr $h + $s`
        #h get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0


        done
h=00

    d=`expr $d + 1`
        #d get 0
        if [ $d -le 9 ]
            then
            d=0$d
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0

    fi

        #####finish################
        ##########time step##
 
 else
    #next month >30
    m=`expr $m + 1`
     
          #month get 0
        if [ $m -le 9 ]
            then
            m=0$m
          
            else
            echo ""
        fi 

        #get 0  


    #n-day
    d=`expr $d - 30`
    echo "n-month $m"
    echo "n-day $d"  

        #d get 0
        if [ $d -le 9 ]
            then
            d=0$d
            echo"next month"
            else
            echo ""
        fi 

        #get 0  

            ##start###########
            ##time step######
    if [ $s -eq 3 ]
#s=3
    then
    for j in `seq 1 7`
        do
        echo "$h"


        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file
        
        h=`expr $h + $s`

        #h get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo "0get"
            else
            echo ""
        fi     
  
        #get 0



        done        
h=00

    else
    #s=1
    for j in `seq 1 23`
        do
         
        echo "$h"
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file
        
        h=`expr $h + $s`
        #h get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0


        done
h=00
    fi

        #####finish################
        ##########time step##


  
    d=`expr $d + 1`
        #d get 0
        if [ $d -le 9 ]
            then
            d=0$d
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0

fi

done

;;


  
 "01" | "03" | "05" | "07" | "08" | "10" | "12" ) for i in  `seq 0 7`

 #month of 31 day#make  7 image
    do
    echo "year $y"
    echo "month $m"
    echo "day $d"
    echo "$i"

    if [ $d -le 31 ] #when d<=31
    then
      
echo ""
echo "$d"

            ##start###########
            ##time step######
if [ $s -eq 3 ]
#s=3
    then
    for j in `seq 1 7`
        do
              
        echo "$h"
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file


        
        h=`expr $h + $s`
      
        #h get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo "0get"
            else
            echo ""
        fi     
  
        #get 0
        done
h=00
    else
    #s=1
    for j in `seq 1 23`
        do
         
        echo "$h"
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file

        h=`expr $h + $s`

        #h get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo "0get"
            else
            echo ""
        fi     
  
        #get 0
        done
h=00
fi


        #####finish################
        ##########time step##


  
    else
#########d>31 next month

    m=`expr $m + 1`
     
       ###if 12 to 1 next year
        if [ $m -le 11 ]
            then
            echo ""
            else
            #when y>12
            y=`expr $y + 1`
            yy=`expr $yy + 1`
            echo "next year $y"
            m=1
        fi

            if [ $yy -le 99 ]
            then
                echo ""
             else
                yy=00
            fi

 
    #month get 0
        if [ $m -le 9 ]
            then
            m=0$m
          
            else
            echo ""
        fi 
        #d get 0
        if [ $d -le 9 ]
            then
            d=0$d
            echo "0get"
            else
            echo ""
        fi     
  
        #get 0
        #get 0  

            echo "new year $y"

    d=`expr $d - 31`
        echo "new month $m"
     
        #d get 0
        if [ $d -le 9 ]
            then
            d=0$d
            echo"next month"
            else
            echo ""
        fi 
        #get 0
        echo "new day $d"
  

            ##start###########
            ##time step######
if [ $s -eq 3 ]
#s=3
    then
    for j in `seq 1 7`
        do
        
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file
        


        h=`expr $h + $s`
        #h get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo "0get"
            else
            echo ""
        fi     
  
        #get 0
        done
h=00        

    else
    #s=1
    for j in `seq 1 23`
        do
         
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file


        
        h=`expr $h + $s`
        #h get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo "0get"
            else
            echo ""
        fi     
  
        #get 0
        done
h=00
fi

        #####finish################
        ##########time step##
    fi
    d=`expr $d + 1`
        #d get 0
        if [ $d -le 9 ]
            then
            d=0$d
            echo "0get"
            else
            echo ""
        fi     
  
        #get 0  

done

;;



 02 ) for i in  `seq 1 7`
 #month of 29 day #make  7 image

    do
    echo "year $y"
    echo "month $m"
    echo "day $d"
    echo "$i"
    if [ $d -le 29 ] #when d<=29
    then
echo ""
echo "$d"

            ##start###########
            ##time step######
if [ $s -eq 3 ]
#s=3
    then
    for j in `seq 1 7`
        do
        echo "$h"
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file
        
        h=`expr $h + $s`
        #h get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0
        done        
h=00

    else
    #s=1
    for j in `seq 1 23`
        do
         
        echo "$h"
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file
        
        h=`expr $h + $s`
        #h get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0

        done
h=00
fi

        #####finish################
        ##########time step##

    else
#when d>29 next month
    m=`expr $m + 1`
     
          #month get 0
        if [ $m -le 9 ]
            then
            m=0$m
          
            else
            echo ""
        fi 

        #get 0  



    d=`expr $d - 29`
    echo "n-month $m"
    echo "n-day $d"  

        #d get 0
        if [ $d -le 9 ]
            then
            d=0$d
            echo"next month"
            else
            echo ""
        fi 

        #get 0  


            ##start###########
            ##time step######
if [ $s -eq 3 ]
#s=3
    then
    for j in `seq 1 7`
        do
      
        echo "$h"
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file
        
        h=`expr $h + $s`
        #d get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0

        done
h=00

    else
    #s=1
    for j in `seq 1 23`
        do
         
        echo "$h"
        wget http://agora.ex.nii.ac.jp/digital-typhoon/globe/color/$y/512x512/$sate$yy$m$d$h.globe.1.jpg -O data/$time/$sate$yy$m$d$h.globe.1.jpg #get image and save image at file
        
        h=`expr $h + $s`
        #d get 0
        if [ $h -le 9 ]
            then
            h=0$h
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0





        done
h=00
fi

        #####finish################
        ##########time step##

    fi
    d=`expr $d + 1`
    #d get 0
        if [ $d -le 9 ]
            then
            d=0$d
            echo"0get"
            else
            echo ""
        fi     
  
        #get 0






done

;;



esac

0 件のコメント:

コメントを投稿