10.10运维笔记Linux

10.10

数组声明
  • declare:声明变量
    • -i:整型
    • -r:只读
    • -a:数组
    • -A:声明关联数组
关联数组
  • 是无序的,使用键(名)作为下标,可以是字符串。

  • 示例:

    declare -A arr1=() arr1=([法师]=火舞歌灵 [战士]=赵云)
    

    可以有 "" 也可以没有。

  • 另一个示例:

     

    arr2=(["wo"]="yang" ["cike"]="西门飞雪" ["ADC"]="火神战姬")

获取关联数组的值
  • 获取特定值:

    echo ${arrname[wo]}
    
  • 获取所有值:

    echo ${arrname[*]} echo ${arrname[@]}
    
  • 获取所有键:

    echo ${!arrname[*]} echo ${!arrname[@]}
    
  • 获取数组长度:

    echo ${#arrname[*]} echo ${#arrname[@]}
    
关联数组的作用
  • 获取同一目录下的所有文件的完整路径
  • 传入某个脚本文件中的参数
  • 数据的整理和特定算法的计算

运算符
  • 使用 expr 进行数字计算:

    expr 数字1 符号 数字2 # + - * /
    
  • 转义字符乘号:

    expr 3 \* 5
    
  • 除法:

    expr 15 / 5
    
  • 使用算术扩展:

    echo $[(3+5)*2] expr \(3+5\)\*2
    

条件判断
  • 使用 test 测试条件:

    test $a1 = $b1 echo $?
    
  • 使用 [ ] 命令:

    [ 条件 ]
    
数字比较特殊符号
  • -gt:大于
  • -lt:小于
  • -eq:等于
  • -ne:不等于
  • -ge:大于等于
  • -le:小于等于
字符比较
  • 使用 = 比较字符串:
    [ $a = $b ]
    
使用 (( ))
(( a >= b && b <= 5 ))

权限判断
  • 使用 [ -操作权限 文件路径 ] 判断权限:
    • -r:可读
    • -w:可写
    • -x:可执行
  • 示例:
    [ -r newfile ] [ -w newfile ] [ -x newfile ]
权限分为
  • u:用户
  • g:组
  • o:其他

每组权限中分为三种操作权限:r(读),w(写),x(执行)。


文件类型判断
  • -e:文件存在
  • -f:存在且是常规文件
  • -d:存在且是目录文件
示例
  • 判断 hello.sh 是否存在:

    [ -e /home/centos/scripts/hello.sh ]
  • echo $?
  • 判断 hello.sh 是否存在且是一个文件:

    [ -f /home/centos/scripts/hello.sh ]
  • echo $?
  • 判断 hello.sh 是否存在且是一个目录:

    [ -d /home/centos/scripts/hello.sh ]
  • echo $?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值