ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
记录一条筛选分析nginx的access_log的指令 ## 根据日期切割日志 ``` sed -n '/14\/May\/2019/,/15\/May\/2019/p' /data/log/nginx/m.tugou.com.access.log > /tmp/m20190514.log ``` * -n:仅展示m.tugou.com.access.log中经过‘/14\/May\/2019/,/15\/May\/2019/p’过滤的数据行 ## 获取2-3点时间段内访问量前10的url ``` grep "25/May/2019:1[4-5]" /data/log/nginx/www.tugou.com.access.log | awk '{print $7}' | sort | uniq -c | sort -nrk 1 | head -n 10 ``` * awk '{print $7}':取出url,print 需要被{}包起来,外面需要单引号,不能是双引号 * uniq -c:合并重复值并展示重复次数 * sort -nrk 1: * n:按照数值排序 * k 1:根据第1列排序 * r:倒序 * head -n 10:获取前10行 ## 根据sql语句过滤日志 ``` tail -n +213693 /www/web_log/web3/baimahu/log/tuan/going/sign_phoneSigning_sign.log | grep 'SELECT\ \*\ FROM\ `cus_detail' | awk -F\' '{print $2}' ``` * tail -n +213693 :过滤文件第213693行之后的数据 * grep 'SELECT\ \*\ FROM\ `cus_detail':过滤内容包含空格,*时需要使用\反斜杠转义。 * awk -F\':分隔符是单引号'时需要使用\反斜杠转义 ## 统计数量 ``` wc -l ``` ## 查找文件 ``` find /tmp/ -type f -mtime +7 -name "*.sh" -exec cp {} /tmp/test \ ``` * -type f: 文件类型是 **普通文件** * -mtime:文件最新修改时间,+7:大于7天 * -name “*.sh“:以sh结尾的文件 * -exec:与其他命令组合使用 * {}:find命令返回的信息 ## 上传本地文件到远程目录 ``` scp /opt/soft/nginx-0.5.38.tar.gz root@10.10.10.10:/opt/soft/scptest ``` ## 上传本地目录到远程目录 ``` scp -r /opt/soft/mongodb root@10.10.10.10:/opt/soft/scptest ``` ## 复制远程文件到本地 ``` scp root@10.10.10.10:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/ ```