存档

2018年9月 的存档

awk简明使用

2018年9月12日 没有评论

完整结构:
“`
awk -F”,” ‘BEGIN{sum1=0;sum2=0;sum3=0};{if($3==100 && NR=265){sum1+=$263;sum2+=$264;sum3+=265} fi};END{print sum1,sum2,sum3}’ file_path
“`

格式化后的样子,\是shell中多行脚本的换行,便于和其他语言的逻辑做对比:
“`
# 定义字段分隔符
awk -F”,” ‘ \
#循环开始前的操作
BEGIN{sum1=0;sum2=0;sum3=0}; \
{\
# 遍历日志每行内容进行操作
if($3==100 && NR=265)\
{\
sum1+=$263;\
sum2+=$264;\
sum3+=265\
}\
fi\
};\
#循环结束后输出几个和
END{print sum1,sum2,sum3}\
‘ file_path

“`

其中很多时候BEGIN{}和END{}因为没有实际操作是可以省略
注意:
一般使用完整写法,这样脚本结构相对清晰,容易理解
BEGIN{初始化部分设置}
{遍历每行时的处理逻辑}
END{结束时的输出,以前会输出求和的值}

另外awk的变量,是没有$符号前缀的,注意
只有分割的列会用$1,$2,$3这样的来表示
每个处理语句之间用;分割

awk常用内部变量
NR
NF

参考:

https://jackxiang.com/post/1874/
https://my.oschina.net/wolx/blog/351601
https://blog.csdn.net/xiyangyang052/article/details/45462505

分类: linux 标签: , ,

lnmp一键安装包替换tengine及手动申请泛域名免费ssl证书

2018年9月6日 没有评论

安装lnmp后,存在脚本/usr/local/acme.sh/acme.sh
设置
export DP_Id=”1234″
export DP_Key=”sADDsdasdgdsf”
#申请证书
/usr/local/acme.sh/acme.sh –issue –dns dns_dp -d *.darkz.co -w /home/wwwroot/darkz.co –reloadcmd ‘/etc/init.d/nginx reload’

重新编译nginx
增加
nginx-http-concat, ngx-fancyindex, ngx_http_google_filter_module, ngx_http_substitutions_filter_module, with-http_addition_module

nginx -V 查看当前版本编译参数
进入nginx源码目录
./configure –user=www –group=www –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module –with-http_v2_module –with-http_gzip_static_module –with-http_sub_module –with-stream –with-stream_ssl_module –with-openssl=/root/lnmp1.5-full/src/openssl-1.0.2o –add-module=../ngx-fancyindex –add-module=../nginx-http-concat

make && make install

再执行:
拷贝编译后的文件到nginx执行文件目录

换成Tengine的方法:
下载tengine的安装包,进入目录,configure出现错误:
方法一样,不过需要清除掉-with-stream –with-stream_ssl_module两个选项

重新编译php,增加交互式执行

参考:
https://www.xiaoz.me/archives/10050

分类: 技术 标签: , ,