shell杂记-shell特别点

1、shell变量

①变量名和等号之间不能有空格:your_name="runoob.com"

②只读变量定义:readonly you_name,在定义后无法被修改

③删除变量:unset your_name

④获取字符串长度:echo ${#your_name}

⑤提取子字符串:echo ${your_name:1:4}

 

2、shell数组

①定义数组用空格隔开或者换行。仅支持一维数组:a=(1 2 3 4);单个值赋值:a[0]=xxx

②获取数组中所有值:${a[@]}

 

3、shell运算符

①expr表达式计算工具,使用反引号:a=`expr 2 + 2 `;注意:反引号是键盘1的左边键;运算符前后数字要有空格

②运算符特别的2点:*号前面必须加\:”val=`expr $a \* $b`;判断是否相等的==、!=的  必须用[]括起来:[ $a == $b ]

 
4、shell的echo
①显示命令输出:echo  `date`
 
5、shell的流程控制
①case的用法示例:
    case $aNum in
        1|2|3|4|5) echo "你输入的数字为 $aNum!"
        ;;
        *) echo "你输入的数字不是 1 到 5 之间的! 游戏结束"
            break
        ;;
    esac
 6、shell的函数调用
①调用函数传参时,不需要在函数中定义参数。直接调用函数:fun 1 2
②传参时,函数内部使用参数,可直接使用$1、$2..表示调用函数时传入的第1位、第2位的值。大于10的值,需要用${10}大括号的方式表示
 

 7、shell的输入/输出重定向

①标准错误文件重定向:command 2 > file
②错误和输出都重定向:commadn > file  2>&1
③输出和输出都重定向:command < file1 > file2  输入重定向到file1,输出重定向到file2
④丢弃结果:command > /dev/null
 
8、shell文件包含
①test2中需要引用执行test1,2种表达方式:source test1.sh  或者 .  ./test1.sh。使用【.空格】或者【source空格】的方式引用

 

 

 
posted on 2019-07-04 09:28  尔伴  阅读(136)  评论(0编辑  收藏  举报