01-10 Linux-bash编程
变量
【01-10 Linux-bash编程】命名规则:
- 只能使用英文字母、数字与下划线,首个字符不能以数字开头
- 中间不能有空格,允许使用下划线
- 不能使用标点符号
- 不能使用 bash 里的关键字(可用help命令查看保留关键字)
# 定义常规变量
[root@xiaojw ~]# name="leo"
[root@xiaojw ~]# echo $name
leo
# 定义只读变量:不能被更改和删除
[root@xiaojw ~]# name=tom
[root@xiaojw ~]# readonly name
[root@xiaojw ~]# unset name
-bash: unset: name: cannot unset: readonly variable
# 删除变量
[root@xiaojw ~]# age=18
[root@xiaojw ~]# echo $age
18
[root@xiaojw ~]# unset age
[root@xiaojw ~]# echo $age
变量类型
- 字符串:
name="leo"
- 拼接字符串:
greeting="hello,"$name"!"
- 数组:
array=(v1, v2, v3)
-
- 取数组中某个值:
value=https://www.it610.com/article/${array}[n]
- 单独赋值:
array[n]=value
- 取数组中某个值:
if
if condition
then
command1
command2
……
fi
循环
for
for var in 取值范围;
do
command1
command2
……
done
while
while condition;
do
command
done
bash 的基本使用
read
- 用于从终端或者文件中读取输入的内部命令
- 读取整行输入
- 每行末尾的换行符不被读入
- 从标准输入读取输入并赋值给变量\
read var
- 从标准输入读取多个内容\
read var1 var2 var3
- 不指定变量(默认赋值给 REPLAY)\
read
$0
:脚本名称$1-$n
:获取参数$#
:传递到脚本的参数个数$$
:脚本运行的当前进程 id 号$*
:以一个单字符串显示所有向脚本传递的参数$?
:显示最后命令的退出状态;0 表示没有错误,其他任何值表明有错误
[root@xiaojw ~]# a=10
[root@xiaojw ~]# b=20
# 加法
[root@xiaojw ~]# expr $a + $b
30
# 减法
[root@xiaojw ~]# expr $a - $b
-10
#乘法
[root@xiaojw ~]# expr $a * $b
200
# 除法;结果只保留整数部分
[root@xiaojw ~]# expr $a / $b
0
# 取余
[root@xiaojw ~]# expr $a % $b
10
# 复制
a=$b
# 相等
[ $a == $b ]
# 不等于
[ $a != $b ]
# -eq:检测相等
[ $a -eq $b ]
# -ne:检测不相等
[ $a -ne $b ]
# -gt:检测左边是否大于右边的值
[ $a -gt $b ]
# -lt:检测是否小于
[ $a -lt $b ]
# -ge:检测是否大于等于
[ $a -ge $b ]
# -le:检测是否小于等于
[ $a -le $b ]
学习资料
阮一峰-Bash 脚本教程
推荐阅读
- python青少年编程比赛_第十一届蓝桥杯大赛青少年创意编程组比赛细则
- HTML基础--基本概念--跟着李南江学编程
- 我的软件测试开发工程师书单
- 芯灵思SinlinxA33开发板Linux内核定时器编程
- 关于响应式编程的十个问题
- iOS-Swift-map|iOS-Swift-map filter reduce、函数式编程
- 零基础学习Python作业本(13)
- 网络编程基础--HTTP
- 《Unix网络编程》第一卷第三版|《Unix网络编程》第一卷第三版 源码编译
- 【读书笔记】JavaScript|【读书笔记】JavaScript DOM编程艺术 (第2版)