shell 脚本编程常用命令

1、日期常用命令

date '+%Y%m%d%H%M%S'
date '+%Y-%m-%d %H:%M:%S' -d '-1 day'

字符串转日期并作时间加减法

date -d "20130701 -i -1 month" +"%Y%m%d"

2、左补位

echo 11 |awk '{printf("%04d",$0)}'

3、求和

cat filename |awk 'BEGIN{total=0}{total+=$1}END{print total}'

4、判断文件夹是否存在并新建文件夹

if [ ! -d "/data/test" ]; then
    mkdir /data/test
fi

5、删除文件大小为0的文件

find . -type f -size 0c | xargs -n 1 rm -f
    ls -lrt |awk '{print $5 " " $9}'| grep ^0 |awk '{print $2}'|xargs rm -rf

6、 字符串截取

_INSERT_TABLE="CC_${_INSERT_MONTH:4:2}"

7、压缩、 解压

解压

tar zxvf FileName.tar.gz

压缩

tar zcvf FileName.tar.gz DirName

8、脚本传入参数判断

if [ $# -ne 1 ] ;then
   echo error ${_SHELL_NAME} 输入参数个数不对 入参参数为年月 格式为 YYYYMM
   exit 1
fi

9、根据年月获取当月天数

cal 3 2018 |sed -n '3,$p' |xargs |awk '{print $NF}'

10、文件拆分


#按文件大小拆分 -d 表示按数字划分 -a 表示后面接4位 -b 表示每个文件大小 -l 表示 行数
split -b 10m -d -a 4  server.log  split_server.log_

split -l 100 -d -a 4  server.log  split_server.log_

11、文件转码

iconv -t utf-8 -f gb2312 -c my_database.sql > new.sql

12、字符串全局替换   (替换当前目录下以sh结尾的文件, ceil 替换成round)

perl -pi -e 's|ceil|round|g' `find -name '*sh'`

13 、MD5加密

echo -n "sr" | md5sum 

不加-n的话, 会带\n

14、字符串全局替换 (制表符替换为,)

sed -i "s/\t/,/g" filename

15、scp复制文件,-r可遍历文件夹并复制

scp appmon@10.8.8.8:/admin/upload/filename*.txt  ./newfilename

16、批量杀进程

ps -ef|grep sshd  | awk '{print $2}' |xargs -n 1 kill -9 

# 查询进程按时间排序
ps aux --sort=start_time|grep Full|grep -v grep

17、长ping主机并记录丢包结果

for i in {1..180}; do ping 127.0.0.1 -c 10 |awk '{print strftime("%H:%M:%S",systime()) "\t" $0}' |grep transmitted >> 20220516.log; done

18、快速查找占用空间较大的文件夹

cat account.list |awk '{print "/"$1"/download"}' |xargs du -sh  |egrep "^([1-9][0-9]*)+([g,G])"
cat account.list |awk '{print "/"$1"/download"}' |xargs du -sh  |egrep "^([1-9][0-9]*)+(\.[0-9]{0,1})([t,T])"

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值