2013-11-22 3 views
1

MFC * .rc 파일에서 verssion 번호를 추출하려고합니다. 그것은 다음과 같습니다문자열에서 powershell을 사용하여 부분 문자열 가져 오기

VALUE "FileVersion", "1.22.333.4444\0" 

실제로 나는 두 개의 값이 필요 - 버전 1.22.333.4444 및 주요 버전 나는 아래의 코드를 작성 1.22

을하고 나에게 버전을 제공하지만, 그것은 추한 모습

$version = Get-Content -Path $rcPath | Select-String -Pattern 'FileVersion' -CaseSensitive –SimpleMatch -List | %{$_ -replace '[\\0]', ''} | %{$_ -replace '[^\d.]', ''} 

내 질문은 다음과 같습니다.

  • 버전을 구할 수있는 간단한 방법이 있습니까?
  • 어떻게 메이저 버전을 얻을 수 있습니까?

답변

6

A [버전] 거기 당신이 사용할 수있는 입력 한 다음

$text = 'VALUE "FileVersion", "1.22.333.4444\0"' 
$version = [version]($text -replace '^.+?([0-9.]+)\\.+','$1') 
$version 


Major Minor Build Revision 
----- ----- ----- -------- 
1  22  333 4444  

:

$version.ToString() 

1.22.333.4444 

'{0}.{1}' -f $version.major,$version.minor 

1.22 
관련 문제