shell入门练习

shell入门练习

**定义局部变量, 局部变量在退出Shell客户端时会失效**

shell入门练习

**单引号:原样输出**

**双引号:如果里面有变量,会输出变量**

**没有引号:输出变量**

shell入门练习shell入门练习

可以在调用脚本的时候给脚本传递参数,脚本内使用$1 $2 ...... 接受传递的参数,当参数超过9的时候,需要用花括号括起来 ${10}

特殊的调用参数:

    $0:返回Shell文件名称
$$:当前脚本的PID
$#:传递的所有参数
$@:程序中的所有参数,这是将参数传递给其他程序的最佳方式。
$! :执行的上一个命令的PID
$?:上一次指令的返回值
$_:此命令前面的最后一个参数
$* :获取所有的参数

shell入门练习shell入门练习shell入门练习

**使用sh命令启动的脚本,则在脚本结束其内部的属性都会消失,其他的脚本不能访问其内部的属性。

使用source 命令启动脚本,则在脚本结束后其属性不会失效,同时其他的脚本也能访问到。

经过验证,使用 ./ 也可以执行脚本

使用unset可以取消变量,这个变量包括环境变量和局部变量**

shell入门练习shell入门练习

定义数组 array=(value1 value2 value3) array_name[0]=value0

读取数组${array_name[index]}

获取数组中全部的元素${my_array[@]}

获取数组的长度${#my_array[*]}

流程控制

if

如果else语句中没有执行语句,不可以写

if condition
then
command1
command2
...
commandN
fi ------------------ if condition
then
command1
command2
...
commandN
else
command
fi ------------
if condition1
then
command1
elif condition2
then
command2
else
commandN
fi

for

for var in item1 item2 ... itemN
do
command1
command2
...
commandN
done

while

while condition
do
command
done

until

类似do-while循环,在最后判断条件,最少执行一次

until condition
do
command
done

case

case 值 in

模式1) command1 command2 ... commandN ;;

模式2) command1 command2 ... commandN ;; esac

函数

demoFun(){   // 定义
echo "这是我的第一个 shell 函数!"
}
echo "-----函数开始执行-----"
demoFun // 调用,如果需要传递参数直接在后面跟就好 demoFun 1 2 3
echo "-----函数执行完毕-----"

运算符

  • expr 是一款表达式计算工具,使用它能完成表达式的求值操作。

  • expr 2 + 2 使用方法 , 需要注意的为1.表达式和运算符之间要有空格 2. 需要用``引起来

关系运算符

shell入门练习

使用方法

if [ $a -lt 100 -a $b -gt 15 ]
then
echo "$a 小于 100 且 $b 大于 15 : 返回 true"
else
echo "$a 小于 100 且 $b 大于 15 : 返回 false"
fi
逻辑运算符
shell入门练习

shell入门练习



上一篇:批量ping测试的脚本


下一篇:PHP简单分页省略中间页码