一、Linux程序包管理
RPM(软件包管理器)
YUM(软件仓库)
二、计算数字
- 例如
var1=10.46var1=10.46
var2=43.67
var3=33.2
var4=71
result=**
(
b
c
<
<
E
O
F
∗
∗
s
c
a
l
e
=
4
a
1
=
(
(bc << EOF**scale = 4 a1 = (
(bc<<EOF∗∗scale=4a1=(var1 *
v
a
r
2
)
b
1
=
(
var2) b1 = (
var2)b1=(var3 * $var4) a1 + b1
EOF
)
echo $result
三、test命令判断三类条件
1.数值比较
#n1 -eq n2 检查n1是否与n2相等
#n1 -ge n2 检查n1是否大于或等于n2
#n1 -gt n2 检查n1是否大于n2
#n1 -le n2 检查n1是否小于或等于n2
#n1 -lt n2 检查n1是否小于n2
#n1 -ne n2 检查n1是否不等于n2
2.字符串比较
#str1 = str2 检查str1是否和str2相同
#str1 != str2 检查str1是否和str2不同
#str1 < str2 检查str1是否比str2小
#str1 > str2 检查str1是否比str2大
#-n str1 检查str1的长度是否非0
#-z str1 检查str1的长度是否为0
注意:使用<或>时需要用转义符
3.文件比较
#测试Linux文件系统上文件和目录的状态
#比较 描述
#-d file 检查file是否存在并是一个目录
#-e file 检查file是否存在
#-f file 检查file是否存在并是一个文件
#-r file 检查file是否存在并可读
#-s file 检查file是否存在并非空
#-w file 检查file是否存在并可写
#-x file 检查file是否存在并可执行
#-O file 检查file是否存在并属当前用户所有
#-G file 检查file是否存在并且默认组与当前用户相同
练习:
#测试Linux文件系统上文件和目录的状态
#比较 描述
#-d file 检查file是否存在并是一个目录
#-e file 检查file是否存在
#-f file 检查file是否存在并是一个文件
#-r file 检查file是否存在并可读
#-s file 检查file是否存在并非空
#-w file 检查file是否存在并可写
#-x file 检查file是否存在并可执行
#-O file 检查file是否存在并属当前用户所有
#-G file 检查file是否存在并且默认组与当前用户相同
#file1 -nt file2 检查file1是否比file2新
#file1 -ot file2 检查file1是否比file2旧
练习:
#file1 -nt file2 检查file1是否比file2新
#file1 -ot file2 检查file1是否比file2旧
#1.显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小,保存脚本为sys_info.sh
#2.将/etc/目录备份到/tmp下,并以此格式保存bak_etc_yyyy-mm-dd,保存为脚本bak_etc.sh
#3.显示当前硬盘分区中空间利用率最大的值,保存脚本为disk_used.sh
#4.显示正连接本主机的每个远程主机的IPv4地址和连接数,并按连接数从大到小排序,保存脚本为link.sh
#5.计算/etc/passwd文件中的第5个用户和第15用户的ID之和,保存脚本为sum_id.sh
#6.统计/etc, /var, /usr目录中共有多少文件,保存脚本为sum.sh
#7.接受一个主机的IPv4地址做为参数,测试是否可连通。如果能ping通,则输出“该IP地址可访问”;如果不可
ping通,则输出“该IP地址不可访问”,保存脚本为ping.sh