shell使用技巧
(1) if语句的使用
a. 判断一个目录是否存在
if [ -d $dir ]
then
….
fi
b. 判断一个文件是否存在
if[ -f $file ]
c. 判断是否有入参
if [ -z "$1" ]
d. 判断参数个数是否正确
if [ $# != 1 ]
e.判断参数格式是否正确(模式匹配)
if [[ $1 != ????-??-?? ]]
(2) for语句
for ((i=0;i<$SRC_LEN;i++))
do
src_temp=${SOURCE[$i]}
……….
done
(3) grep 关键字 filename
grep –E 多个关键字 filename
(4) awk使用
a. 关键字匹配
awk -F"," '/'$keywords'/ {print $0}' $logfile
关键字要用’ ’隔离
使用-F设置分割符
对分割后的内容以$n显示,其中$0显示所有匹配到的记录。
{}中是要执行的操作。
b. 管道使用,可以逐层处理,简化代码。
awk -F"," '/'$keywords'/ {print $0}' $logfile| awk -F"," '{}’
c. awk中使用shell中定义的变量,字符串分割,awk中使用for循环及数组,awk的输出
errcode=”…,…,..”
awk … ‘{
err="'$errcode'";
split(err1,error,",");
for (i in error)
{
if (error[i]==$5)
print $1,$2,$3,$4,$5,mean[i],$6
}
awk中使用shell变量的思想是将shell中定义的变量转化为awk定义的变量
(5) 函数定义
function MakeBzton {
……
}
函数调用
MakeBzton
MakeBzton 参数
(6) 数组定义
ArrayName=(
……
)
(7) 文件拷贝,加-rf包含目录
cp -rf $SRC_PATH/$src_temp $INSTALL_PATH/$RELEASE_VER/$dest_temp
三:svn使用技巧
1. Export代码
svn export --username=$username --password=$password $SVN_PATH
2. 更新代码
svn update --username=$username --password=$password $SVN_PATH
3. 注意事项
(1) 在svn目录结构树发生改变时,无法从svn上更新代码。比较笨的解决办法是把原来的删除再重新export