shell-03-命令替换

文章目录

          • 一、命令替换

一、命令替换
语法格式
方法一 command 注意反引号
方式二 $(command)

举例:

# 1.获取系统的所有用户并输出
# cut 命令 -d表示指定分隔符 -f表示第一个字段
# 可以使用man cut详细查看命令
cat /etc/passwd | cut -d ":" -f 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 "This is $(date +%Y) year"
# 明年
echo "This is $(($(date +%Y) + 1)) year"

# 注意:$后面的一个括号表示命令替换 两个表示计算 加减乘除
# 3.根据系统时间获取今年还剩下多少星期,已经过了多少星期
date +%j
# 已经过了多少天 多少星期
echo "This year have passed $(date +%j) days"
echo "This year have passed $(($(date +%j)/7)) weeks"

# 还剩下多少天 多少星期
echo "This year has not passed $((365-$(date +%j))) days"
echo "This year has not passed $(((365-$(date +%j))/7)) weeks"
# 4. 判定nginx进程是否存在,若不存在则自动拉起该进程
ps -ef | grep nginx | grep -v grep | wc -l
# 对应脚本
# !/bin/bash
#
nginx_process_num=$(ps -ef | grep nginx | grep -v grep | wc -l)
if [$nginx_process_num -eq 0 ];then
	systemctl start nginx
fi	

你可能感兴趣的:(shell)