전원 쉘 스크립트를 사용하여 파일의 내용을 읽고 특정 유형의 단어를 선택하려고합니다. 내가 더 하류로 사용하려는 변수로 발견되는 단어를로드해야합니다.텍스트 파일에서 특정 유형의 단어를 선택하여 변수에로드하십시오.
이 내 입력 파일과 같은 모습입니다 : 내가 선택하고 싶은
{
"AvailabilityZone": "ap-northeast-1b",
"VolumeType": "gp2",
"VolumeId": "vol-087238f9",
"State": "creating",
"Iops": 100,
"SnapshotId": "",
"CreateTime": "2016-09-15T12:17:27.952Z",
"Size": 10
}
특정 단어 vol-xxxxxxxx
입니다. 나는이 내가 그 일을하고 어떻게 내 스크립트 How to pass a variable in the select-string of powershell
쓰기이 링크를 사용 :
$Filename = "c:\reports\volume.jason"
$regex = "^[vol-][a-z0-9]{8}$"
$newvolumeid=select-string -Pattern $regex -Path $filename > C:\Reports\newVolumeid.txt
$newVolumeid
나는 그것을 실행 만 응답은 제공하지 않습니다이 스크립트를 실행
. 어떻게 든 선택 문자열의 출력이 변수$newvolumeid
에로드되지 않은 것 같습니다.
어떻게 해결할 수 있습니까? 아니면 제가 빠진 것입니까?
PS : 위의 게시물은 약 3 세이며 작동하지 않으므로 재 게시 중입니다.
이'json'에있는 파일입니다 시도 대신 정규식을 사용하여, 당신은 JSON을 구문 분석하고 사용하여 속성을 선택 할 수 있습니까? 그렇다면 [이 게시물을 체크 아웃하십시오] (http://stackoverflow.com/questions/16575419/powershell-retrieve-json-object-by-field-value) – gwillie