语法格式
方法1: ``
方法2:${command}
示例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
输出:
This is 1 user: root
This is 2 user: bin
This is 3 user: daemon
This is 4 user: adm
This is 5 user: lp
This is 6 user: sync
This is 7 user: shutdown
This is 8 user: halt
This is 9 user: mail
This is 10 user: operator
示例2:输出系统时间
echo "This is $(date +%Y) year" # This is 2022 year
# 明年
echo "This is $(($(date +%Y) + 1)) year" # This is 2023 year
示例3:已经过了多少星期
date +%j
echo "This year have passed $(date +%j) days"
echo "This year have passed $(($(date +%j)/7)) weeks" # This year have passed 50 weeks
echo "This is $((365-$(date +%j))) days before new year" # This is 11 days before new year
示例4:判断Nginx是否已经启动
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
总结
``和$()
推荐初学者使用$()
,易于掌握;缺点是极少数Unix可能不支持。