저는 Boxfuse라고하는 유틸리티를 사용하고 있습니다. 변환 명령은 약간의 시간이 소요되며이 처리 과정에서 몇 줄의 출력이 있습니다.Bash에서 명령이 완전히 끝날 때까지 기다리십시오.
아주 마지막 출력의 마지막 단어를 변수에 저장하려고합니다. 이것은 약 절반의 시간 동안 작동합니다. 나머지 절반은 이전 출력 라인 중 하나의 마지막 단어를 실제로 저장합니다. 내 bash는 지금과 같습니다
이Boxfuse client v.1.19.12.1000 Copyright 2016 Boxfuse GmbH. All rights reserved. Account: myname (First Last)
Waiting for AWS to create an AMI for myname/MyApp:1.3.5 in aws-region-1 (this may take up to 50 seconds) ...
AMI created in 02:51.972s in aws-region-1 -> ami-12345678
가끔 내 스크립트가 첫 번째 또는 두 번째 줄에서 마지막 단어를 메아리 : 여러 줄에 걸쳐 등 분 이상
BFCONVERT=$(boxfuse convert MyApp:1.3.5)
AMI=${BFCONVERT##* }
echo $AMI
이 명령의 전체 출력, 바로 마지막 단어가 아니라 명령이 완료 될 때까지 기다리려면 어떻게해야합니까?
마치 'boxfuse'가 출력 결과를 표준 오류에 기록하거나 실제로 출력을 생성하는 하위 프로세스를 포킹 한 후에 종료하는 것처럼 들립니다. – chepner
위의 시나리오에 해당하지 않습니다. –
@AxelFontaine 명령이 마지막 두 줄을 반환하지 않을 수도 있습니까? 내가 그것을 실행하는 시간의 절반 정도가 첫 번째 줄에서 마지막 이름을 추가 출력없이 마지막 단어로 사용하는 것 같습니다. –