幾個有用的shell腳本
?(1)在shell下,操作hadoop目錄,批量命名或刪除,最終的命令sed的正則貪婪替換,看下面的腳本: ?
-
# 遍歷 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 }' ` do echo $line2 ; #將/tmp/a/b 使用sed變成/tmp/a_b 注意下面的正則式子 newname=`echo $line2 | sed -e 's/\(.*\)\//\1_/' ` ; #echo $newname; hadoop fs -mv $line2 $newname done done
(2)記錄當前啟動的進程id,并以后臺方式掛起運行,腳本例子如下:
[search@fse4 solr]$ cat start.sh #下面的代碼,將當前啟動的上次啟動的進程id記錄下來 #方便關閉時,kill掉 #$$記錄當前的進程id,$!記錄上次啟動的進程id #nohup 是后臺掛起線程方式運行,并將日志文件輸出到nohup.out里面,進行監控 nohup java -jar start.jar &> nohup.out & echo $! >pid& #echo $$ > pid [search@fse4 solr]$
(3)linux下,將字符串日期,格式化為時間戳:
[search@fsedump01sand tempshell]$ date -d '2015-12-01' +%s 1448899200
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!