Bash脚本-确认提示符(Y/N, YES/NO)

时间:2019-05-19 01:25:34  来源:igfitidea点击:

问题-如何在我们自己的shell脚本中添加[Y/n]确认?
如何在bash中将用户的输入作为Yes/No/Y/N ?
我们经常看到命令要求确认[Y/n]或[Yes/No]输入。
这对于了解用户是否希望继续执行not的其余步骤非常有用。
我们还可以在脚本中添加相同的函数。
本文将通过示例(Bash脚本确认提示符(Y/N, YES/NO))进行此类输入。

Bash中添加(Yes / No)提示

如果输入错误,此示例代码将提示确认,程序将以状态1退出。
下面的示例代码只接受 Ynyesno(不区分大小写)。

#!/bin/bash

read -r -p "确定吗? [Y/n] " input

case $input in
    [yY][eE][sS]|[yY])
		echo "Yes"
		;;
    [nN][oO]|[nN])
		echo "No"
       		;;
    *)
	echo "输入无效..."
	exit 1
	;;
esac

循环确认提示

这是另一个示例代码,它将提示进行确认,直到我们提供正确的输入(Y, N, YES或NO)。
如果输入错误,它将再次提示输入正确,并重复相同的步骤。
这个示例将只接受Y或N或YES或NO(不区分大小写)。

#!/bin/bash

while true
do
	read -r -p "确定吗? [Y/n] " input

	case $input in
	    [yY][eE][sS]|[yY])
			echo "Yes"
			break
			;;
	    [nN][oO]|[nN])
			echo "No"
			break
	       		;;
	    *)
		echo "输入无效..."
		;;
	esac
done