Shell编程

    为了让自己的程序能在系统启动时运行,决定写一个shell脚本,现学习linux下的shell编程。

  最简单的使用例子:
   
# !   / bin / bash
#var.sh
#################

 myVar
= " Hello World! "
 echo 
' $myVar: '   $myVar

 在命令行下使用$bash var.sh 或者 使用chmod +x var.sh为脚本文件赋予可执行的权限,即可输出:
 $myVar: Hello World!
 从样例程序可以看出
 变量的声明直接使用非关键字就行,使用“=”进行赋值,使用字符串用引用“”弱引用字符,这样避免被空白字符分开。
 ‘’单引号的作用是直接显示单引号的内容为强引用字符,尽管使用的了取变量值的"$"符号。
 $myVar取变量名的值。
  使用echo显示输出。
 
# !   / bin / bash
#fun.sh
########################
###

function getParm
{   
    
if [ "$1" = "start" ];
     then
    echo 
-"you want to start the server!"
        #start it
     elif [ 
"$1" = "stop" ];
    then
    echo 
-"you want to stop the server!"
    #pkill it 
     elif [ 
"$1" = "restart" ];
    then
    echo 
-"you want to restart the server!"
    #pkill it
    #start it
    
else
         echo 
-"Usage: $0 start | stop | restart"
   fi
}


getParm 
" $1 "

echo  - " getParm $# parms: $* "

结果输出如下:
$bash fun.sh start
$ you want to start the server!
$getParm 1 parms: start

 代码fun.sh,学习函数使用以及控制语句:
 function 的定义如代码所示。
 得到运行时的参数可以使用$加数字,参数下标从0开始,$0为运行的程序名,类似c语言中的argv[0]
 同时还有几个技巧:
 1.$*将所有的参数放在一起组成一个字符串(如果传入的参数为var.sh start my server,则显示传入的参数为getParm "$*"则将start my server 作为1个参数使用)
 2.$@则相反,每个参数以空的字符分开
 3.$#表示传递参数的个数

 if elif else 使用如代码所示,注意的地方为if[ 条件 ],左括号后与右括号前必须有空格隔开。
 判断字符中的相等用 “=”,不相等为“!=”,以及">" "<"

 这样就可以实现一个自己使用参数来控制自己的服务运行还是停止以及重新启动。
 还有一些文件测试的操作符的使用如-d file file并且是一个目录存在返回真, -w -r -x file等即为对file文件的写权限,读权限,执行权限测试。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值