다음 코드 스 니펫이 문제를 해결합니다. 코드 스 니펫은 배치 스크립트 용입니다.
aws ec2 get-console-output --output table --instance-id "i-256789"> InstanceId.txt
findstr "(RSA)" varInstanceId.txt>RSAFingerprint.txt
for /f "tokens=3 delims= " %%G in (RSAFingerprint.txt) do @echo %%G>RSAFingerprint.txt
for /f "delims=" %%G in (RSAFingerprint.txt) do set varRSAFingerprint=%%G
echo varRSAFingerprint: %varRSAFingerprint%
지금 라인으로 EC2 인스턴스에 대한 시스템 로그를 제공합니다
aws ec2 get-console-output --output table --instance-id "i-256789"> InstanceId.txt
EC2 콘솔 출력을 위의 코드 라인을 이해할 수 있습니다. table
형식으로 출력하는 것이 매우 중요합니다. 그렇지 않으면 json 출력이 파일에 CRLF를 제공하지 않아 RSA 지문을 추출 할 수 없습니다.
findstr "(RSA)" varInstanceId.txt>RSAFingerprint.txt
그것이 키워드를 포함하는 전체 라인을 반환하고 RSAFingerprint.txt
에 넣어 것 파일에 대한 (RSA)
키워드를 찾을 때, 생성 된 시스템 로그 파일에서 (RSA)
키워드를 찾는.
for /f "tokens=3 delims= " %%G in (RSAFingerprint.txt) do @echo %%G>RSAFingerprint.txt
위의 회선은 이전에 추출 된 회선에서만 지문을 추출합니다.
for /f "delims=" %%G in (RSAFingerprint.txt) do set varRSAFingerprint=%%G
위의 행은 변수 varRSAFingerprint
에 지문을 넣습니다.