shell learning note
shell learning note MAIN="/usr/local/" # 变量大写 STATUS="$MAIN/status" # 美元符加字符串是引用变量值,而美元符加数字表示命令行参数 echo "some words" >>$STATUS/log.log echo "test.sh start at `date '+%m/%d %H:%M:%S'`" >>$STATUS/log.log cat $FILE | grep -v "#" >$OTHERFILE.list # -v剔除#开头的行 year=`date +%Y echo $LINE | awk -F "+" '{print $var}'` # -F以“+”为分隔符“=”等号两边不能有空格 if [ -s "${path}/test.list" ] # 如果文件存在即为非0时为真 []与参数之间必须要有空格[\s$arg\s] if [ -n "$var1" -o -n "var2" ] #-n 当字符串的长度大于0时为真(串非空) -a,-o,! 逻辑与,或,非 -f file 文件为正规文件为真 # ${args1}_$args2 加上{}是为了更清晰地说明args是变量而不是args_,当遇到多个参数一起时不会混淆变量 then for LINE in `cat $file` do # substr(s,p,n) 返回字符串s中从p开始长度为n的后缀部分 exam:substr($string,0,length(1)) result:s filename=`echo $LINE | awk -F "+" '{print substr($1,0,1)}'` expr $value \* $times if ["$flag" -eq "1"] then checkFlag=`checkSchedule "${Args1}" "$Args2"` # checkFlag等于checkSchedule函数返回值,$Args1是传入参数 func "$var1" "$var2" #传入var1,2给函数func() fi done fi func() { var1=$1 var2=$2 } Ctrl + v 进入块选择模式,然后移动光标选中你要注释的行,再按大写的I进入行首插入模式输入注释符号如 // 或 #,输入完毕之后,按两下ESC,Vim会自动将你选中的所有行首都加上注释,保存退出完成注释