我正在编写一个Shell脚本,以便更轻松地切换AWS配置文件
#!/bin/bash
PROFILES=$(aws configure list-profiles)
arr=($PROFILES)
PS3='Please enter your choice: '
select opt in "${arr[@]}"
do
case $opt in
$opt)
echo "Selecting ${opt}"
export AWS_PROFILE="${opt}"
;;
"Quit")
break
;;
*) echo "invalid option $REPLY";;
esac
done
字符串
一切看起来很好,我可以从列表中选择我的配置文件。但问题是,我想选择退出选项退出程序。例如,列表中包含3个配置文件。输出是
1.型材1
1.型材2
1.型材3
期望的结果是当我输入4,程序将退出,如果我输入5或其他不同的东西,它将打印出无效的选项$RESIDE.实际结果是什么都没有发生,当我输入4或其他任何东西.谢谢大家
2条答案
按热度按时间nr7wwzry1#
那么,你应该能够直接检查输入的数字。
字符串
eqqqjvef2#
在@WeDBA的帮助下,我创建了这个脚本,以交互方式为shell设置AWS_PROFILE变量。
字符串
把它放在你的zsh配置文件中。如果你愿意,你可以用bash试试。
1.在shell中,你可以调用
set_aws_profile
,你会得到一个交互式的fzf选择器。1.选择要使用的配置文件,然后它将为您设置AWS_PROFILE env变量。