一句话脚本

目录

检查文件中的{}是否匹配

#注意下面这个没有过滤注释行
#输出为不匹配的行号
cat nginx.conf |grep -on '[{}]' |awk -F":" '{a[NR]=$1;b[NR]=$2;count=0} END{for(i=1;i<=length(a);i++) {if(b[i]=="{"){count++}else{count--;if(count<0){count=0;print a[i]}}}}'

对当前目录文件按大小排序

#这种写发对一些sort版本不适用
ls |xargs -i du -sh ./{} |sort -h
#这种写法可能效率要低一些,但是是通用的
ls |xargs -i du -s ./{}  |sort -n |awk '{print $2}' |xargs -i du -sh {}

对当前目录下的文件数量进行排序

find . -maxdepth 1 -type d |xargs -i sh -c "echo {};find {} |wc -l " |awk '{if(NR%2==1) {pwd=$0} else {print pwd " " $0}}' |sort -t " " -k 2 -n -r

删除7天内没有修改过的文件

find . -ctime +7| xargs -i /bin/rm -f {}

检查URL状态码

code=`curl -s -o /dev/null -x 115.28.139.41:80 -w "%{http_code}" "v5b7.com"` && echo  $code

找到目标文件并把文件按目录路径名拷贝到临时目录里去

find / -name "*txt" |xargs -i bash -c "echo {} ;echo {} |sed -e 's#/#-#g' -e 's#^\.-##g'" |sed 'N;s/\n/ /'|awk '{cmd="cp "$1 " tmp/"$2;system(cmd)}'                  

目录