对shell脚本进行了一个系统的了解,初次实现如下。
path="/blongweb/nginx/logs"
echo "are you sure?yes/no\n"
echo "please input: "
read FLAG
if [ "${FLAG}" = "yes" -o "${FLAG}" = "YES" ]
then
cd ${path}
>access.log
sleep 2
>error.log
sleep 2
echo "is success"
fi
简单的说明:
shell里边的变量不用声明类型可以直接赋值。
使用变量直接使用${path}可以直接获取。需要注意的两点。 在if判断里边要加上双引号,与java等的区别为双引号不会将变量获取前变为字符串。
if判断用[] 并且里边用=而不是==。每一个if判断的最后都要加fi。 read 可以执行获取输入行的变量。 -o为或的意思。
最后的一点,shell文件在windows系统编辑的话会存在结束符和unix系统不一致的问题,执行会报错:
syntax error: unexpected end of file
解决这个问题只需要将文件格式变为unix。
vi编辑文件使用如下命令在保存即可。
:set fileformat=unix