Bash速成

条件语句(注意:条件里两边的空格,引号,等号)

if [ “$var” = “abc” ]; then

elif [ “$var” = “ac” ]; then

else

fi

for循环

for var in $(ls *.sh); do
echo $var
done

while循环

var=1
while [ “$var” -le 20 ] ; do
var=$(($var+1))
done

until循环(跟while循环相反的)

until condition
do

done

case条件(可用正则,;;相当于break)

case “$var” in
yes | YES | y )
echo “YES”
echo “haha”
;;
[Nn]* ) echo “NO”;;
* ) echo “OTHER”;;
esac

定义/赋值变量

var=xxx  (等号两边不能有空格)

变量读取

echo $var

读取用户输入

read var

不输出换行

echo -n

执行命令并捕获返回值

$(command)

其它

shell里默认类型是字符串型

Ubuntu Server覆盖安装Nginx并配置Etags & Expires

image Ubuntu是基于Debian的,继承了Debian的优良特性,apt就是其一。每次要装软件直接apt-get install解决问题,非常方便。但是源里的软件相对比较过时,并且缺乏定制性(比如软件的小插件等)。
Ubuntu 9.04里带的Nginx是0.6.32版,据Jiucool情报讲,有漏洞。当时就想编译安装一个,但是苦于缺少一些库又没时间一一添加而没有安装。今天Ubuntu源里的Nginx更新到了0.6.35,修正了Bug,偶直接给Upgrade了一下。
这两天又折腾加速,YSlow评级要想到A的话,须让Nginx给静态元素加Etags,需要加个插件。加插件的话就要重新编译Nginx,干脆一不做二不休,干掉现在的0.6,搞个0.7.62玩。
最方便就是覆盖掉现在的老版本的Nginx,服务那些脚本就都不用重写直接可以用了。 Continue reading “Ubuntu Server覆盖安装Nginx并配置Etags & Expires”