我使用了以下命令:
aws s3 ls s3://mybucket/mydir --recursive > bigfile
Run Code Online (Sandbox Code Playgroud)
生成的文件太大(9.5MB),无法方便地使用,因为我需要仔细查看我正在寻找的信息。
我真正需要的只是三层以下的信息。是否可以调整此命令,以便我只向下递归 N 个级别,而不是一直向下递归每个目录?我没有看到任何类似于-maxdepthS3 CLI ls 命令的内容
更新:这是我最终用来获取所需信息的命令,尽管我对此不满意。当我只想要 40 个左右的唯一值时,它仍然给了我 77000 个结果,但它足够短,可以移植到 Excel 中,并通过文本到列进行缩减并删除重复项。
aws s3 ls s3://mybucket/mydir --human-readable --summarize --recursive | egrep '*_keytext_*' | tr -s ' ' | cut -d' ' -f5 >smallerfile
Run Code Online (Sandbox Code Playgroud) 因此,这就是问题所在:对于我们的50多个存储库中的每一个,我们都有一个三层分支模型:Dev,Test,Master。开发人员可以根据需要随时更新开发人员,并由团队负责人汇总变更并将其提交给我们的测试环境,然后将代码合并到测试分支并进行标记。一旦测试并通过(部署)代码,便将其迁移到主代码。在将代码放入master并成功部署之后,我们将杀死旧分支并仅在需要时创建新分支。
但是,我们正在使用SonarQube和Fortify扫描代码,每次请求新分支时更新扫描计划都变得不知所措。我们希望保留在每个版本中刷新分支的模型。
我的想法是为每个存储库创建一个新分支,该分支始终保持相同的名称,但是每次从dev分支进行合并以进行测试时,都会自动将来自test分支的代码合并到其中。我们将使用此分支进行代码扫描,因为它应该与更改的分支完全匹配。
我们可以将其作为Jenkins管道脚本的一部分开始,但这只会将问题从“更新扫描计划中的分支”转移到“更新50+个脚本”(或一个参数化列表,虽然更好,但并不理想) )
有没有办法在将主要合并合并到永久性主要测试分支的同时,自动执行从dev分支到永久测试分支的合并?所有这些都无需手动更新脚本(或者更好的是,参数化列表)?我可能会遇到问题(父分支问题等)吗?