我有一个 bash 脚本,其中执行以下命令:
aws s3api list-objects --bucket my-bucket-name --output text
它恢复项目列表并将其打印在屏幕上的“新会话”中。看起来调用另一个命令来打印结果。它显示部分结果和列表末尾的“:”,您可以在其中按“空格”或“q”。当您“q”(退出)时,它会显示回“原始”终端内容。
我想知道如何识别 aws 执行的这个“打印命令”以及如何将其存储在变量中。我尝试过将其重定向到文件 ( > file
) 或将命令输出分配给变量 ( output=$(command)
),但都不起作用。
答案1
您必须使用命令行客户端--no-cli-pager
的选项aws
来禁用该寻呼机。
yourvar="$(aws --no-cli-pager s3cli …)"
我还没有检查过,但它完全有可能集成自己的寻呼机而不是使用less
.但它也可能只使用less
,这是此类事物的常见选择。