执行含AWS QuickSight命令的.sh脚本时暂停,如何取消手动交互?
解决AWS CLI脚本执行时的手动交互问题
你的脚本执行中暂停显示冒号,是因为AWS CLI默认启用了分页功能——当命令输出内容较多时,会调用分页工具(如less),需要手动按键才能继续执行。以下是几种让脚本自动运行的解决方法:
方法一:给单个命令禁用分页
在每一条aws quicksight update-dashboard-permissions命令末尾添加--no-paginate参数,强制禁用该命令的分页逻辑:aws quicksight update-dashboard-permissions --aws-account-id ?????????????? --dashboard-id ?????????????????? --grant-permissions Principal=arn:aws:quicksight:us-east-1:??????????????:user/default/firstName.LastName,Actions=quicksight:DescribeDashboard,quicksight:ListDashboardVersions,quicksight:UpdateDashboardPermissions,quicksight:QueryDashboard,quicksight:UpdateDashboard,quicksight:DeleteDashboard,quicksight:DescribeDashboardPermissions,quicksight:UpdateDashboardPublishedVersion --no-paginate方法二:全局禁用脚本内的AWS CLI分页
在脚本的最开头添加环境变量配置,让整个脚本执行期间都禁用AWS CLI的分页功能:export AWS_PAGER=""将这行代码放在所有AWS命令之前即可生效。
方法三:让分页工具自动退出
如果不想完全禁用分页,可通过配置LESS环境变量,让默认分页工具less在内容显示完成后自动退出:export LESS="-FX"同样将这行放在脚本开头,即使触发分页逻辑,也无需手动按键就能继续执行脚本。
内容的提问来源于stack exchange,提问作者Matthew Walk
相关产品推荐
相关产品推荐

