You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux Bash Shell中如何将计算出的天数插入输出语句?

解决方法

你需要用命令替换来获取年龄天数的计算结果,再把结果嵌入到目标语句中。这里有两种简单的实现方式:

方式1:保留bc命令的写法

把原脚本最后一行的echo "$age * 365 | bc"替换成:

echo "Your age in days is: $(echo "$age * 365" | bc)"

$(...)会执行括号内的命令,并把输出结果替换到这个位置,这样就能直接把计算出的天数插入到语句里。

方式2:用Bash内置算术扩展(更高效)

如果输入的年龄是整数,直接用Bash自带的$((...))做算术运算即可,不需要调用外部的bc命令:

echo "Your age in days is: $((age * 365))"

这种方式不用启动额外进程,执行速度更快,适合整数计算的场景。

修改后的完整脚本

#!/bin/bash

echo "Enter first name: "
read first_name
echo "Enter last name: "
read last_name
echo "Enter age: "
read age
echo "Your full name is $first_name $last_name"
if [ "$age" -lt 20 ]; then
echo "You're still under 20 years old."
elif [ "$age" -ge 20 -a "$age" -lt 30 ]; then
echo "You are in your twenties."
elif [ "$age" -ge 30 -a "$age" -lt 40 ]; then
echo "You are in your thirties."
elif [ "$age" -ge 40 ]; then
echo "You are older than 40."
fi

# 这里以方式2为例,也可替换为方式1的写法
echo "Your age in days is: $((age * 365))"

内容的提问来源于stack exchange,提问作者Tristan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 04:07:35