shell脚本一:语句和变量

1.创建shell文件

shell脚本文件其实就是shell命令的有序集合,创建好后使用chmod 740 file赋予文件执行权限即可

2.shell的变量

  • shell允许用户建立变量存储数据,但是shell中的变量不支持数据类型,将任何赋给变量的值都解释为一串字符;
  • 变量赋值的时候等号两边不可以加空格
  • 调用变量时在变量前加上$,赋值的时候不需要
  • 使用unset命令删除变量的赋值

3.位置变量

  • $#:包含的命令行参数的个数
  • $1~$9:第一到第九个命令行参数,10以后要加{}
  • $0:与键入的命令行一样,包含脚本文件名,不包含命令行参数
  • $ *或者$ @:包含所有的命令行参数"$1,$2,$3…"
  • $#:最后一个命令行参数
  • $?:前一个命令的输出结果(0代表真,非0代表假 )

4.shell中语句

  • #号开头直到该行结束是注释语句,不会被执行
  • read从标准输入读取一行,并赋值给后面的变量,格式为read var
  • 一次性读取多个变量的格式为read var1 var2 var3。如果输入的数据数比变量数多,那么多余的全部都算在最后一个变量上,因为shell没有数据类型的概念,会把空格前后的数据一起当成一组数据;
  • 输入语句会阻塞,如果输入的少了直接按下回车,那么会读取已经输入的数据,不会再阻塞
  • echo会自动换行,如果第一行用的是/bin/sh,末尾加上\c则不换行;如果第一行用的是/bin/bash,echo前面加上-n不换行
#!/bin/bash

echo -n "input var:"
read var1 var2 var3
echo "var1 = $var1,var2 = $var2,var3 = $var3"
  • expr进行简单整数运算,包括加(+),减(-),乘(*),除(/),求模(%)
  • 算术 运算符两边要有空格
#!/bin/bash

A=$(expr 3 + 4 / 5)		只有整数运算,结果为3,而且需要用$()转换一下
echo "A = $A"

  • test语句可以测试三种对象,字符串,整数和文件属性,0为真

  • 字符串测试:s1 = s2,测试内容是否完全一致

  • 字符串测试:s1 != s2,测试内容是不一致

  • 字符串测试:-z s1,测试s1长度是否为0

  • 字符串测试:-n s1,测试s1长度是否不为0

  • 整数测试:a -eq b,测试a与b是否相等

  • 整数测试:a -ne b,测试a与b是否不相等

  • 整数测试:a -gt b,测试a是否大于b

  • 整数测试:a -ge b,测试a与b是否大于等于b

  • 整数测试:a -lt b,测试a是否小于b

  • 整数测试:a -le b,测试a 是否小于等于b

  • 文件测试:-d name,测试name是否是一个目录

  • 文件测试:-e name,测试一个文件是否存在#!/bin/bash

  • 文件测试:-f name,测试name是否是普通文件

  • 文件测试:-L name,测试name是否是符号链接

  • 文件测试:-r name,测试name文件是否存在且为可读

  • 文件测试:-w name,测试name文件是否存在且为可写

  • 文件测试:-x name,测试name文件是否存在且为可执行

  • 文件测试:-s name,测试name文件是否存在且长度不为0

#!/bin/bash

str="hello"
num="hello"
test $str = $num
echo $?		输出上一条语句的执行结果,0位真,这里输出0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值