"새 세션에서" 인쇄된 명령 결과를 변수에 할당

"새 세션에서" 인쇄된 명령 결과를 변수에 할당

다음 명령을 실행하는 bash 스크립트가 있습니다.

aws s3api list-objects --bucket my-bucket-name --output text

프로젝트 목록을 복원하고 "새 세션"의 화면에 인쇄합니다. 결과를 인쇄하기 위해 다른 명령을 호출하는 것처럼 보입니다. 부분적인 결과가 표시되며 목록 끝에 ":"이 표시되어 "space" 또는 "q"를 누를 수 있습니다. "q"(종료)하면 "원래" 터미널 내용이 다시 표시됩니다.

aws에서 실행되는 이 "인쇄 명령"을 식별하는 방법과 이를 변수에 저장하는 방법을 알고 싶습니다. 파일로 리디렉션 > file하거나( ) 명령 출력을 변수( )에 할당하려고 시도했지만 output=$(command)둘 다 작동하지 않습니다.

답변1

호출기를 비활성화하려면 명령줄 클라이언트 --no-cli-pager의 옵션을 사용해야 합니다.aws

yourvar="$(aws --no-cli-pager s3cli …)"

아직 확인해 보지는 않았지만, less그냥 사용하는 것이 아니라 자신만의 호출기를 통합하는 것도 전적으로 가능합니다. less이런 경우에는 일반적인 선택입니다.

관련 정보