Shell-练习1
练习1:
获取系统所有用户名并输出
#!/bin/bash
index=1
for user in `cat /etc/passwd | cut -d ":" -f 1`
do
echo "this is $index user: $user"
index=$(($index + 1))
done
练习2:
根据系统时间计算今天或明天
#计算今年
echo "今年是 $(date +%Y) 年"
#计算明年
echo "明年是 $(($(date +%Y) + 1)) 年"
练习3:
根据系统时间获取而今年还剩下多少个星期,已经过个多少个星期
#获取今天是今年中的第几天
echo $(date +%j)
#获取今年已经过个多少个星期
echo "今天是今年中的第 $(((365 - $(date +%j))/7)) 个星期"
#获取今年还剩下多少个星期
echo "今年还剩 $(((365 - $(date +%j))/7)) 个星期"
练习4:
判断nginx 进程是否存在,如果没有则重启该进程
#!/bin/bash
# 定义一个变量用来统计nginx 进程数量
nginx_p_num=$(ps -ef | grep nginx | grep -v grep | wc -l)
# 判断nginx 进程数量,如果为0,则重启该进程
if [ $nginx_p_num -eq 0 ];then
systemctl start nginx
fi
注意:
-
``和$() 两者是等价的
-
( ( ) ) 主 要 用 来 精 选 整 数 运 算 , 引 用 变 量 前 的 (()) 主要用来精选整数运算,引用变量前的 (())主要用来精选整数运算,引用变量前的可加可不加