首页 > 解决方案 > CloudFormation 命令列表 cwd

问题描述

我有一个需要运行的 20 个命令的列表,请参见下面的代码片段(显示命令 01 和 02)

            "AWS::CloudFormation::Init": {
                "configSets": {
                    "default": [
                        "install_packages"
                    ]
                },
                "install_packages": {
                    "commands": {
                        "01": {
                            "command": "sudo -H pip3 install --upgrade pip",
                            "cwd": "/home/ubuntu"
                        },
                        "02": {
                            "command": "sudo -H pip3 install virtualenv",
                            "cwd": "/home/ubuntu"
                        },
                        ...

如您所见,cwd有重复。我想从主目录运行所有这些命令/home/ubuntu。有没有办法在不为每个命令指定的情况下做到这一点?如果这里没有设置默认的 cwd 是什么?

标签: amazon-web-servicesamazon-ec2amazon-cloudformation

解决方案


IIRC,命令将允许执行多个 bash 命令。您可以尝试将多个命令合并到一个命令参数中 - 只需从 02 复制命令并将其添加到从 01 开始的命令末尾,&&介于两者之间,即sudo -H pip3 install --upgrade pip && sudo -H pip3 install virtualenv


推荐阅读