example
每次运行一个命令会返回一个 $? 变量,如果执行成功 $? = 0 ,不成则为 非0
运行脚本bash ping.sh 指定解释器bash 执行文件 ping.shwhich bash 返回 bash 的目录地址which python 返回 python 的目录地址
ping c1 www.baidu.com && echo "OK." || echo "not OK."执行成功 OK 执行失败 not OKping c1 www.baidu.com &>/dev/null && echo "OK." || echo "not OK."不输出ping相关的信息
shebang(#!) 仅第一行生效
例如,以指令#!/bin/sh开头的文件,在不指定解释器执行时会实际调用 /bin/sh 程序
组合实例
#!/bin/bashecho "Hello World !"# 命名使用变量your_name="qinjx"echo $your_nameecho ${your_name}# 设置变量只读myUrl="https://www.google.com"readonly myUrl# 删除变量unset myUrl#for file in `ls /etc`for file in $(ls /etc)for skill in Ada Coffe Action Java; doecho "I am good at ${skill}Script"done# 字符串拼接your_name="runoob"# 使用双引号拼接greeting="hello, "$your_name" !"greeting_1="hello, ${your_name} !"echo $greeting $greeting_1# 使用单引号拼接greeting_2='hello, '$your_name' !'greeting_3='hello, ${your_name} !'echo $greeting_2 $greeting_3
计算
#!/bin/basha=10b=20val=`expr $a + $b`echo "a + b : $val"val=`expr $a - $b`echo "a - b : $val"val=`expr $a \* $b`echo "a * b : $val"val=`expr $b / $a`echo "b / a : $val"val=`expr $b % $a`echo "b % a : $val"if [ $a == $b ]thenecho "a 等于 b"fiif [ $a != $b ]thenecho "a 不等于 b"fi
