我有一个python脚本,它在开始时要求用户输入密码,简单地如下所示:
password = input()
在我的bash脚本中,我有:
echo -n "password: "
read -s password
printf "$password" | python my_script.py
这可以很好地工作,但我有一个条件,如果用户输入了错误的密码,脚本会提示他再次键入密码,直到他键入正确的密码,如下所示:
while not login:
password = input()
login = check_correct(password)
我应该能够在我的bash脚本中处理这个问题,但我不确定如何处理,我尝试使用yes
命令,如下所示:
yes $(read -s password) | python3 my_script.py
但不出所料,这总是会向脚本发送相同的输入。有人知道我怎么能做到这一点吗?
发布于 2021-05-04 20:26:36
你可以这样做:
while True:
resp = input('Enter your password')
if check_correct(resp):
break
else:
print('Invalid Password, please try again')
https://stackoverflow.com/questions/67390998
复制相似问题