備忘幾個有用的shell指令碼

來源:互聯網
上載者:User

標籤:

(1)在shell下,操作hadoop目錄,批量命名或刪除,最終的命令sed的正則貪婪替換,看下面的指令碼:

Java代碼  
  1. # 遍曆 hadoop 目錄下的檔案名稱   
  2.   
  3. for line in `hadoop fs -ls /user/d1 | gawk ‘{ print $8 }‘ `   
  4. do  
  5.   
  6. #echo $line;      
  7.   
  8. #將2級目錄下的檔案,移動到上一級   
  9. #hadoop fs -mv $line"/tmp_search_keywords_cate_stat/*"  $line ;   
  10. #刪除2級目錄   
  11. #hadoop fs   -rm -r  $line"/tmp_search_keywords_cate_stat"  
  12.   
  13. for line2 in `hadoop fs -ls $line  | gawk ‘{ print $8 }‘   `   
  14.   
  15. do  
  16.   
  17. echo $line2 ;   
  18.   
  19. #將/tmp/a/b 使用sed變成/tmp/a_b 注意下面的正則式子   
  20.   
  21. newname=`echo $line2 | sed -e ‘s/\(.*\)\//\1_/‘ ` ;   
  22.   
  23.   
  24. #echo $newname;   
  25.   
  26. hadoop fs -mv $line2   $newname   
  27. done   
  28. done  
# 遍曆 hadoop 目錄下的檔案名稱for line in `hadoop fs -ls /user/d1 | gawk '{ print $8 }' `do#echo $line;   #將2級目錄下的檔案,移動到上一級#hadoop fs -mv $line"/tmp_search_keywords_cate_stat/*"  $line ;#刪除2級目錄#hadoop fs   -rm -r  $line"/tmp_search_keywords_cate_stat"for line2 in `hadoop fs -ls $line  | gawk '{ print $8 }'   `doecho $line2 ;#將/tmp/a/b 使用sed變成/tmp/a_b 注意下面的正則式子newname=`echo $line2 | sed -e 's/\(.*\)\//\1_/' ` ;#echo $newname;hadoop fs -mv $line2   $newnamedonedone



(2)記錄當前啟動的進程id,並以後台方式掛起運行,指令碼例子如下:

Java代碼  
  1. [search@fse4 solr]$ cat start.sh    
  2.   
  3. #下面的代碼,將當前啟動的上次啟動的進程id記錄下來   
  4. #方便關閉時,kill掉   
  5.   
  6. #$$記錄當前的進程id,$!記錄上次啟動的進程id   
  7. #nohup 是後台掛起線程方式運行,並將記錄檔輸出到nohup.out裡面,進行監控    
  8. nohup java -jar start.jar  &> nohup.out &  echo $! >pid&   
  9.   
  10. #echo $$ > pid   
  11. [search@fse4 solr]$   
[[email protected] solr]$ cat start.sh #下面的代碼,將當前啟動的上次啟動的進程id記錄下來#方便關閉時,kill掉#$$記錄當前的進程id,$!記錄上次啟動的進程id#nohup 是後台掛起線程方式運行,並將記錄檔輸出到nohup.out裡面,進行監控 nohup java -jar start.jar  &> nohup.out &  echo $! >pid&#echo $$ > pid[[email protected] solr]$ 



(3)linux下,將字串日期,格式化為時間戳記:

Java代碼  
  1. [search@fsedump01sand tempshell]$ date -d ‘2015-12-01‘ +%s   
  2. 1448899200  
  3.    

備忘幾個有用的shell指令碼

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.