shell编程


1:shell环境  #!/bin/sh 或者 #!/bin/bash
     shell文件开头的 #!告诉系统其后路径所指定的程序即使解释此脚本文件的shell程序

2:变量
    your_name="llazy"      //注意:变量名和等号之间不能有空格
    可以使用语句给变量赋值    for file in 'ls /etc'或者 for file in $(ls /etc)    
    
    使用一个定义过的变量,在变量名前加 $   例: echo $your_name 或者 echo ${your_name}
    
    只读变量 
    your_name="llazy"
    readonly your_name
    
    删除变量    unset your_name
    
    
3:shell注释
    单行注释 以#开头
    多行注释  EOF也可为其他符号
    :<<EOF
    注释内容
    注释内容
    EOF
    
4:shell传递参数
    执行shell脚本时,脚本内使用参数格式为:$n,n为数字     $0为执行的文件名 $1传入的第一个参数
    $# :传入参数的个数
    $* :以一个单字符串显示所有向脚本传递的参数
    $$ :脚本运行的当前进程的ID号
    $! :后台 运行的最后一个进行的ID号
    
5:shell基本运算符
    条件表达式要放在方括号之间并且要有空格 [ $a == $b ]
    原生bash不支持数学运算,可通过awk,expr
    value=`expr 2 + 2`      乘号*前面要加反斜杠 \*
    
    关系运算符: 
    关系云算法只支持数字,不支持字符串  返回true或者false
    -eq : 相等                    equal
    -ne : 是否不相等              not equal
    -gt : 左边是大于右边          greater than
    -lt : 左边是否小于右边        less than
    -ge : 左边是否大于等于右边    greater than or equal to
    -le : 左边是否小于等于右边    less than or equal to
    
    布尔运算符     ! 非运算
    -o 或运算
    -a 与运算
    
    逻辑运算符  && ||
    
    字符串运算符
    = 检测两个字符串是否相等
    !=
    -z 检测字符串长度是否为0   为0返回true
    -n 检测字符串长度是否不为0 不为0返回true
    $ 检测字符串是否为空
    
6:shell函数
    [ function ] funname [()]
    {
        action;
        [return int;]
    }
    返回值 只能为0-255整数
    
    参数传入:在调用函数时 可以直接传入参数 funname 1 2 3 内部使用 $1 $2表示第一个第二个参数
    

    
命令行下输入 if cont; then echo 'true'; fi 同一下语句
if count
then
    echo 'true'
fi

if 后面
    

    
    

chmod 777

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值