統計top500的過程總結(perl,shell,java)【1-shell】

來源:互聯網
上載者:User
這次的任務是統計一周內的top500詞條。
資料來源:來自於oracle資料庫。
需求:產生excel表格並發送郵件給相關人。
    由於是首次接觸這樣的任務(在伺服器上編寫指令碼,處理資料),在這個過程中遇到了很多問題,也學習了很多知識點:包括shell指令碼的使用,相關linux命令,shell指令碼發送郵件,perl指令碼的使用,perl指令碼串連資料庫,複雜sql語句,perl指令碼處理資料、產生excel(格式設計),perl指令碼無法逸出字元為可識別的漢字、因此需要用java程式來處理已經產生的excel,解碼utf8為可識別的漢字,java讀寫excel等等很多知識點。這個過程一下子接觸了很多對於別人來說可能很easy的東西,充實了自己。贊一下自己!    這部分知識分成以下幾部分來總結:
一、shell相關
二、perl相關
三、java相關
四、複雜sql語句
    這幾部分其中涉及的內容可能再細分。
一、shell相關1、日期:  date=`date "+%Y%m%d"`//今天的日期
  date2=`date -d "7 days ago" "+%Y%m%d"`//7天前的日期  year=`date -d yesterday "+%Y"`
  mon=`date -d yesterday "+%m"`
  day=`date -d yesterday "+%d"`
  weekDay=`date -d yesterday "+%u"`//數字表示的日期(從星期一開始1-7)  linux
shell date用法    一行直接寫一個date,會在命令列輸出顯示當前的日期2、發郵件:   echo "${date} Top500 in A Week Report" | /usr/bin/mutt  -a top500.xls -s "Top500 in A Week Report ${date}"
xxx@163.com   這一行的運行結果是:給xxx@163.com發送郵件,標題為“Top500
in A Week Report 20111129”,附件為top500.xls,郵件內文內容為“20111129 Top500 in A Week Report”。
3、調用其他指令碼:   調用shell指令碼:sh /shellpath/xx.sh   調用perl指令碼:cd /perlpath perl xx.pl $參數1 $參數2 $參數34、調用java程式:
export JAVA_HOME=/application/jdk1.6.0_10export PATH=$JAVA_HOME/bin:$PATHexport SH_HOME=/home/loganalysis/import/webapps/ROOT/wikiexport LIB=$SH_HOME/WEB-INF/libexport CLASSPATH=/home/loganalysis/import/webapps/ROOT/shell/extlib/javax.servlet.jar:$LIB/../classes:$LIB/jxl.jar:$CLASSPATHexport LANG=zh_CN.GB18030export LANGUAGE=zh_CN.GB18030:zh_CN.GB2312:zh_CNARGS="-Xms32m -Xmx512m  -Djava.awt.headless=true "year=`date "+%Y"`mon=`date "+%m"`day=`date "+%d"`file=/home/userX/top500/top500.xls//參數們java $ARGS a.b.c.classPath.DecodeExcelJXL ${file} ${year}-${mon}-${day}//(由於上面CLASSPATH中寫了類的路徑,所以這裡可以這樣調用類)

5、其他:
  echo "要顯示的內容,比如時間為${date}"
  printf "時間為%s \n",${date};//有格式,斷行符號,末尾加分號

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.