Closed. This question is off-topic。它当前不接受答案。
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
3年前关闭。
我写了一个小脚本来检查更新。
我正在寻找输出3个答案中的1个的方法:
如果没有更新,请返回“您的系统是最新的”
如果只有一个更新可用,则返回“有一个更新可用”
如果有多个更新,则返回“有$ NUMOFUPDATES个可用更新”
这是我到目前为止的内容:
它不执行的操作是显示是否只有1个更新,而不返回“有1个更新可用”,返回“有$ NUMOFUPDATES个更新可用”
我觉得我已经接近解决方案了。有人可以帮我找到解决方案吗?
谢谢。
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
3年前关闭。
我写了一个小脚本来检查更新。
我正在寻找输出3个答案中的1个的方法:
如果没有更新,请返回“您的系统是最新的”
如果只有一个更新可用,则返回“有一个更新可用”
如果有多个更新,则返回“有$ NUMOFUPDATES个可用更新”
这是我到目前为止的内容:
#!/bin/bash
# Check for Updates
# Variables
NUMOFUPDATES=$(LANG=C apt-get upgrade -s |grep -P '^\d+ upgraded'|cut -d" " -f1)
UPDATEY1="There is 1 Update available"
UPDATEY2="There are $NUMOFUPDATES Updates available"
UPDATEN="Your system is up to date"
if [ $NUMOFUPDATES -gt 0 ]; then
echo "\${color3}"$UPDATEY2 # Number of updates available
elif [ $NUMOFUPDATES -eq 1 ]; then
echo "\${color3}"$UPDATEY1 # Number of updates available
else
echo "\${color2}"$UPDATEN # System is up to date
fi
exit 0
它不执行的操作是显示是否只有1个更新,而不返回“有1个更新可用”,返回“有$ NUMOFUPDATES个更新可用”
我觉得我已经接近解决方案了。有人可以帮我找到解决方案吗?
谢谢。
最佳答案
1大于0。将if语句更改为if [ $NUMOFUPDATES -gt 1 ]; then
。
关于linux - Bash脚本在Updates语句上返回正确的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39554423/