gpt4 book ai didi

Linux Bash函数条件执行用户输入

转载 作者:太空宇宙 更新时间:2023-11-04 12:31:54 24 4
gpt4 key购买 nike

我正在尝试读取用户输入,例如 yes 和 no 并执行一个工作正常的函数,但它在执行一次后退出脚本。

当用户输入是或 Y 键时,我想编写脚本来执行规定的功能,然后重复上一步。

这是脚本。

redosmartcheck () {
read -n1 -p "Do you want to Hot Swap the Hard Disks and reperform the smart test? [y,n]" doit
case $doit in
y|Y) smartcheck;;
n|N) echo "continuing to the next stage to wipe all hard disk drives" ;;
*) echo dont know ;;
esac
}
redosmartcheck
exit 0

如果用户按下 Y 键,脚本将执行 smartcheck 函数并退出脚本。我如何才能让它重复 redosmartcheck 功能而不是退出?

提前致谢

最佳答案

我建议插入一个while:

redosmartcheck () {
while [[ $doit == "" || $doit =~ y|Y ]]; do
read -n1 -p "Do you want to Hot Swap the Hard Disks and reperform the smart test? [y,n]" doit
case $doit in
y|Y) smartcheck;;
n|N) echo "continuing to the next stage to wipe all hard disk drives" ;;
*) echo "dont know";;
esac
done
}

redosmartcheck

关于Linux Bash函数条件执行用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43078836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com