当我给出命令aws config list
时,我会得到默认配置文件的以下输出:
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
然而,当我为一个命名的配置文件发出命令时,我会得到一个配置文件名
$ aws configure list --profile MyProfile
Name Value Type Location
---- ----- ---- --------
profile MyProfile manual --profile
我已经尝试过aws configure set profile Default
通过读取"set"CLI命令将默认配置文件命名为Default
,我也尝试过aws configure set StoreAs Default
,因为我认为这就是在读取此页面后变量的名称。我之所以要这样做,是因为我想要两个配置文件,并且我想要使用AWS_DEFAULT_PROFILE
环境变量在配置文件之间切换。
我也有多个配置文件,我使用AWS_DEFAULT_PROFILE
来回切换。但是,我为每个配置文件命名了一些描述性的名称,比如aws-engineering
和aws-production
。然后,我可以使用set AWS_DEFAULT_PROFILE=aws-engineering
,我很乐意去。
我的~/.aws/config
中没有指定DEFAULT配置文件,这是故意的,所以我总是明确地选择我正在使用的环境。
在命令行设置AWS_DEFAULT_PROFILE
环境变量应指定配置文件。
请参阅:我可以指定默认的AWS配置文件吗?
例如:
Linux、macOS或Unix
export AWS_DEFAULT_PROFILE=user2
注意:要取消设置,请运行:unset AWS_DEFAULT_PROFILE
要使更改持久化,请将以上行添加到~/.bashrc
用户的文件中。
注意:您也可以使用AWS_PROFILE
。请参见:命名配置文件。
Windows
set AWS_DEFAULT_PROFILE=user2
来源:用户指南»配置AWS CLI»命名配置文件。
另请参阅:管理AWS SDK中凭据的新的标准化方法。
您只需切换到所需的配置文件(例如:在Linux中使用:export AWS_DEFAULT_PROFILE=MyProfile
),然后使用export AWS_DEFAULT_PROFILE=default
切换回默认配置文件。'default'是创建第一个配置文件时为其指定的配置文件名称。
在Windows中,如果您想确保配置文件的更改在新的命令行会话中持续,请更好地使用setx
setx AWS_DEFAULT_PROFILE profle_name
请记住关闭命令提示符并打开一个新的
如果您想将自己的配置文件设置为默认配置文件,那么您应该考虑更改shell的启动脚本。
对于Powershell来说,这就是你可以做到的。
$Env:AWS_PROFILE="admin"
这里的配置文件名称是CCD_ 17。
在Linux和macOS中,你可以这样做。
export AWS_PROFILE=admin
如果更改持续存在,那么一切都很好,否则请更改~/.bashrc
或~/.zshrc
。