备忘几个有用的shell脚本_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 备忘几个有用的shell脚本

备忘几个有用的shell脚本

 2015/4/8 0:16:32  qindongliang1922  程序员俱乐部  我要评论(0)
  • 摘要:(1)在shell下,操作hadoop目录,批量命名或删除,最终的命令sed的正则贪婪替换,看下面的脚本:#遍历hadoop目录下的文件名forlinein`hadoopfs-ls/user/d1|gawk'{print$8}'`do#echo$line;#将2级目录下的文件,移动到上一级#hadoopfs-mv$line"/tmp_search_keywords_cate_stat/*"$line;#删除2级目录#hadoopfs-rm
  • 标签:Shell脚本 脚本

(1)在shell下,操作hadoop目录,批量命名或删除,最终的命令sed的正则贪婪替换,看下面的脚本

class="java">
# 遍历 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
 

发表评论
用户名: 匿名