2020-11-25 shell脚本、字符串、运算符

shell脚本

shell是一种脚本语言,也就是解释性语言。程序设计语言可以分为两类:编译型语言和解释型语言。

编译型语言需要预先将我们写好的源代码转换成目标代码,这个过程被称作“编译”。运行程序时,直接读取目标代码。由于编译后的目标代码非常接近计算机底层,因此执行效率很高,这是编译型语言的优点

解释型语言也叫做脚本语言。执行这类程序时,解释器需要读取我们编写的源代码,并将其转换成目标代码,再由计算机运行。因为每次执行程序都多了编译的过程,因此效率有所下降

Linux的Shell脚本解释器种类众多,一个系统可以存在多个shell脚本解释器,可以通过cat /etc/shells 命令查看系统中安装的shell脚本解释器

[root@localhost /]# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash

字符串

获取字符串长度

#!/bin/bash

string="abc";

echo ${#string}

输出结果

3

截取字符串:(字符串默认从0开始)

echo ${string:1:2}

输出结果

bc

在字符串中查找字符所在的位置
如查找cb所在位置 ,(它会查找到第一个找到的字母位置并返回)

echo expr index "$string" cb

输出结果

2

shell数组

arrs=(v0 v1 v2 v3)
echo ${arrs[0]}  #输出下标为0的字符
echo ${arrs[@]}  #输出所有的字符
echo ${#arrs[@]} #输出arrs数组内字符的长度

输出结果

v0
v0 v1 v2 v3
4

注释

单行注释


#这是一个单行注释

多行注释

:<<EOF



EOF



:<<!

!



:<<'

'

shell外部传递参数

输出时在执行命令后加上自己输入的值

echo "执行参数名:$0"

echo "执行文件名:$1"

输出时

执行参数名:./hello-world.sh
执行文件名:12

shell 条件if判断语句

` a=1`
 b=2`
`if [ $a == $b ]`
`then`
 `echo "true"`
`else`
 `echo "false"`
`fi`

输出结果

false

shell运算符

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

#!/bin/bash

a=10

b=15

val=`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 $a / $b`
echo "a / b : $val"

val=` expr $a % $b`
echo "a % b : $val"



输出结果:
[root@localhost shell]# ./te.sh
a + b : 25
a - b : -5
a * b : 150
a / b : 0
a % b : 10

关系运算符

运算符意义
-eqequal等于
-nenot equal 不等于
-gtgreater than 大于
-ltless than 小于
-gegreater than or equal 大于等于
-leless than or equal 小于等于
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值