1

나는 bashrc을 사용하여 스냅 샷을 만들고 삭제합니다.ec2-describe-snapshots의 응답으로 grep을 사용하여 키워드를 찾는 방법은 무엇입니까?

것은 내가 명령을 사용 싶어, 데이터를 삭제합니다 :

ec2-describe-snapshots | sort -r -k 5 | grep "My Keyword" | awk '{print "Deleting snapshot: " $2}; system("ec2-delete-snapshot " $2)' 

그렇지 않은 :

ec2-describe-snapshots | sort -r -k 5 | awk '{print "Deleting snapshot: " $2}' 

및 설명에 그렙를 사용하지만를 내가 직접 그 같은 명령에 그렙를 사용할 때 스냅 샷의 ID 만 검색하므로 아무것도 반환하지 않습니까?

내 질문은 : 어떻게 스냅 샷의 설명에 포함 된 키워드를 검색 할 수 있습니까?

답변

2

스크립트를 살펴본 후에 스크립트가 제대로 작동하는 것처럼 보입니다. 그래서 나는 서버에서 똑같은 일을 시도했지만 그것을 삭제하는 대신 스냅 샷을 다시 설명하려고합니다.

ec2-describe-snapshots | sort -r -k 5 | grep <description> | awk '{print "Deleting snapshot: " $2}; system("ec2-describe-snapshots " $2)'

I 얻는 반응은 명령의 그렙 부분을 미세 작동이

Deleting snapshot: snap-fabaa29e 
SNAPSHOT  snap-fabaa29e vol-cccb4ea6 completed  2012-01-31T16:08:42+0000  100% 362457333706 50  <description> 
Deleting snapshot: snap-ccbaa2a8 
SNAPSHOT  snap-ccbaa2a8 vol-b2cb4ed8 completed  2012-01-31T16:08:42+0000  100% 362457333706 50  <description> 
Deleting snapshot: snap-c0baa2a4 
SNAPSHOT  snap-c0baa2a4 vol-d0cb4eba completed  2012-01-31T16:08:42+0000  100% 362457333706 50  <description> 

같다. 그러나 가능한 한 당신이 찾고있는 설명에 잘못된 것이 있습니다. 또한 결과를 정렬하는 이유를 모르겠지만 모두를 삭제하거나 드라이브를 특정 순서로 삭제해야합니까?

grep 절의 텍스트를 다시 확인하십시오. 확실히 거기에서 오류를 발견 할 것입니다.

+0

감사합니다. 스냅 샷 설명을 디버깅하고 있습니다 ... 도와 주셔서 감사합니다. 내 상황에 대한 정보를 제공하겠습니다. 감사합니다. – clement

+0

이제 스크립트에서 모든 스냅 샷을 설명 할 수 있지만 스냅 샷을 삭제하려고 할 때 "/ bin/sh : ec2-delete-snapshots : not found"가 있습니다 (그러나 올바른 스냅 샷을 참조하기 전에 라인 : 스냅 샷 삭제 : snap-9f8e46f4) 어떻게 만들 수 있습니까? 삭제를 수행 하시겠습니까? 감사합니다 – clement

+0

좋습니다, ec2-delete-snapshots가 아니지만 ec2-delete-snapshot ... hum 고맙습니다! – clement