Linux入门--教程4(点灯笼) Shell Scirpt 脚本 string字符串 专题

目录

1_打印字符串

2_输入

3_比较字符

4_拼接字符串

5_数组

 

 

1_打印字符串

a="hello"
b="world"

echo $a $b

输出如下,,echo会原封不动打印ab $a $b因为加入了空格,所以有空格

补充:左右两边加双引号表示是字符串,也可以去掉,是一样的

 

2_输入

echo please enter a:
read a 

echo please enter b:
read b

c=`expr $a + $b`
echo $a + $b = $c

3_比较字符

password="hello123"

echo please enter password:
read userPassword

if [ $password = $userPassword]  # linux脚本里面一个=, 且左右两边加空格,这个格式用来做比较
                                 # c里面是strcmp  java里面是.equals作比较
then
    echo "密码正确!"
else
    echo "密码错误!"
fi

结果

不等于    !=

password="hello123"

echo please enter password:
read userPassword

if [ $password != $userPassword]  # linux脚本里面一个=, 且左右两边加空格,这个格式用来做比较
                                 # c里面是strcmp  java里面是.equals作比较
then
    echo "密码错误!"
else
    echo "密码正确!"
fi

4_拼接字符串

str1="hello"
str2="world"

str3="$str1 $str2"
echo $str3

输出:hello world

如果不加中间空格,如下

判断是否是空字符串

str1="hello"
str2="world"

if [ -z $str1]
then 
    echo "str1 是空的"
else
    echo "str1 不是空的"
fi

-z 表示判断是不是0

-n 表示判断是不是不是0   not zero

5_数组

sh 是最原始的脚本处理语言1979年

bash 是后来发展出来的,如果涵盖有array,请用bash才能运行

arr=(7 8 9 10)

sh会报错,如下

bash test.sh就没问题

1_Linux写出数组中的一个数 会比较麻烦 ${arr[1]} 下角标是1

arr=(7 8 9 10)
echo ${arr[1]}

2_想把数组里面内容都打出来用 for循环

arr=(7 8 9 10)

for i in $arr{[@]}
do
    echo $i   # 这里的i走的循环是循环的数组本身,而不是角标
done

3_求所有数组数字的和

4_所有数组数字最大值

-gt greater than

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机视觉-Archer

图像分割没有团队的同学可加群

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值