Shell常用

1、批量替换文本

sed -i '/^$/d' *.sql     #删除空行
sed -i 's/,//g' *.sql 
sed -i 's/^M//g' *.sql       #需要替换^M 或
sed -i 's/\r//g' *.sql
sed -i 's/[ \t]*$//g' *.sql       #删除行尾空白
sed -i 's/$/,/g' *.sql 
sed -i '1 s/,//g' *.sql  #第一行
sed -i '$ s/,//g' *.sql   #最后一行
tac test.txt  #反转内容

2、

sort: sort -t , -n +1 -2 -o b.avl ABD_VGOP2-R2.12-01_20090116_990001.AVL
     sort -n -r -k 1 date.csv 
      cat log.csv | awk -F"_" '{print $2}' | cut -c0-8 | sort | uniq -c > day.csv

3、awk -F'","' '{print $1"|||",$2"|||",$5"|||",$4"|||",$6"|||",$7"|||",$8"|||",$9"|||",$10"|||",$11"|||",$12"|||",$13"|||",$14"|||",$15}' i_20090314_VGOP2-R2.10-51302_01_001.dat > a.dat
替换:sed 's/x01/,/g' a.dat>b.dat
4、转换字符集:iconv -c -f GB18030 -t UTF-8 b.dat>c.dat
5、解压缩

     unzip a.zip

6、批量替换文件名 rename 20120717 20120809 *.dat
7、 grep -i dwa_m04_pop_phy_ord_det_basic_sum_da *.tcl | awk -F ":" '{print $1}' | sort | uniq
8、杀hadoop进程 jps | grep -v Jps | awk '{print $1}' | xargs kill -9
9、远程杀进程 ssh slave1 "ps -ef | grep impala | grep -v grep | awk '{print $2}' | xargs kill -9"
10、时间加减

date +%Y%m%d         //显示前天年月日
date +%Y%m%d --date="+1 day"  //显示前一天的日期
date +%Y%m%d --date="-1 day"  //显示后一天的日期
date +%Y%m%d --date="-1 month"  //显示上一月的日期
date +%Y%m%d --date="+1 month"  //显示下一月的日期
date +%Y%m%d --date="-1 year"  //显示前一年的日期
date +%Y%m%d --date="+1 year"  //显示下一年的日期

11、sed 's/1\x0109\>//g' b.csv #去掉09结尾
12、 awk -F"\x01" 'OFS="\x01"{$NF="";$(NF-1)="";print}' b.csv | sed 's/\x01$//g' > d.csv #去掉最后两列
13、find apps/ -name "*.sql" | xargs -i grep -i Time_type {} #查找文件并过滤

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值