标签:while循环 执行命令 定义变量 com 两种 port shel 接下来 错误
shell变量
系统变量和和用户自定义变量
系统变量如下
显示当前所有变量 set命令
定义变量: 变量=值 =两边无空格
unset 撤销一个变量
声明静态变量,但是静态变量不能撤销
shell定义的变量规则
1.变量名称由字母,下划线,数字组成,不能以数字开头
2.等号两侧不能有空格
3.变量名称一般为大写
shell可以通过命令的返回去去展示结果
两种方式:
1. result=`命令·
2.result=$(命令)
设置环境变量
export 变量名=变量值 // 将shell变量输出为环境变量
source 配置文件 // 让修改后的配置信息立即生效
echo $变量名 //查询环境变量的值
注意:环境变量可以为很多文件使用
位置参数变量
当我们执行了一个shell脚本时,如果希望获取到命令行的参数信息,就可以使用到位置参数变量比如 ./shell.sh 100 200 这就是执行的一个shelll命令,可以在在shell.sh获取到
$n : n为数字,$0代表命令本身,$1到$9代表第一个到第九个参数,10以上的参数需要用大括号比如${10}
$* 这个代表命令行中所有的参数,$*把所有的参数看成一个整体
$@ 这个命令同上,也代表命令行中所有的参数,只不过是$@把每个参数区分对待,在接下来的for循环表现明显,类似于java的遍历
$# 这个变量代表命令行中所有的参数的个数
预定义变量
就是shell设计者已经定义好的变量,可以直接在shell脚本中直接使用
$$ 当前进程号是
$! 后台运行的最后一个进程的进程号
$? 最后一次命令的执行状态,如果这个变量值为 0则最后一次的执行命令是正确的,如果是非0 数值无所谓,则执行错误
shell中的进行算数各种操作
1、$(( 运算式 )) 或者$[ 运算式]
2、expr m + n // 运算符之间要有空格
3、expr m - n
4、expr \* , /, % 乘,除,取余
案例 计算2+4的值
案例 计算命令行两个参数的和
案例 计算2+3两个数用 expr ` 2 + 3 `
expr中的 \*代表乘,/代表除,%代表取余
result=`expr 计算式 `
条件判断:
两个整数的比较
= 字符串比较
- -lt 小于
-le 小于或等于
-gt 大于
-ge 大于或等于
-ne 不等于
按照文件的权限进行判断
-r 进行读的权限
-w 进行写的权限
-x 进行执行的权限
按照文件类型进行判断
-f 文件存在,是个常规文件
-e 文件存在
-d 目录是否存在
应用案例:1、 ok是否与ok相等
2、23是否大于22
shell之if语句
if [ 判断 ]
then echo “执行的程序”
fi
或者
if [ 判断 ]
then echo "执行的程序"
elif [判断]
echo “执行的程序"
fi
注意: 条件判断式和中括号之间 必须有空格
请输入一个shell程序,如果输入的参数大于等于60,则输出及格了,小于60 则不及格
case语句
case $变量名 in
”值1“)
如果变量值等于1,执行程序1
;;
"值2")
如果变量值等于2,执行程序2
;;
*)
;;vim
如果变量的值都不是以上的值,则执行此程序
esac
案例: 当命令行参数是1时,输出周一,当命令行是2时,输出周二,其他情况输出other
for循环
for 变量 in 值1 值2 值3
do
程序
done
案例 打印命令输入的参数
第一种方式
:
第二种方式
注意 : $* 是吧参数一下子给,,,, $@是把参数一个一个给
案例: 从1加到100
:
while循环
while [ 条件判断 ]
do
程序
done
案例:从命令行输入一个数n,统计从1+。。。。。n的值是多少?
标签:while循环 执行命令 定义变量 com 两种 port shel 接下来 错误
原文地址:https://www.cnblogs.com/bianfuxia/p/12004122.html