文件头:#!/bin/sh shell
打印:echo 123
循环:cat $log_path | while read line
do
echo 00000
done
判断:if
echo yes
else
echo no
fi
字符串替换:line=${line//'被替换字符串'/'替换字符串'} (替换所有字符串)
line=${line/'被替换字符串'/'替换字符串'} (替换左边第一个字符串)
字符串分割:OLD_IFS="$IFS"
IFS="|" (“|”表示以什么分割)
arr=($line) (将分割后字符串放入数组arr)
IFS="$OLD_IFS"
echo ${arr[0]} (获取数组中的值)
去掉第一條'?'字符串及其右邊的字串:${accurl%%'?'*}
去掉第一個' ?'及其左邊的字串accurl=${arr[2]#*' ?'}
nginx日志时间格式化: dateTime=‘24/Feb/2017:09:38:44 +0800’
dateTime=${dateTime//'/'/' '}
dateTime=${dateTime/':'/' '}
dateTime=`date -d "$dateTime" +"%F %T"`
数据库操作:mysql -h(数据库ip地址) -u(数据库账号) -p(数据库密码) -e"sql"
mysql -h120.76.232.XXX -uXX-pXXX -e"insert into goldminedb.visit_0 values ('$uuid','$eleId',INET_ATON('"${arr[0]}"'),$type,'$dateTime','$accurl','$page');"
本文介绍了Shell脚本中常用的技术,包括打印、循环、条件判断、字符串操作、数组使用等核心功能,并提供了实例说明如何进行数据库操作及日志时间格式化。
842

被折叠的 条评论
为什么被折叠?



