2017-04-10 1 views
3

두 개의 전자 메일 필드가있는 PowerShell 스크립트에 대한 csv 입력이 있습니다. 하나는 항상 값을 포함하고 하나는 때때로 값을 가지며, 후자의 값이 존재할 때 변수 $WriteEmail에 대해 나중에 스크립트에서 mailcontact 필드를 설정하는 데 사용하려는 값입니다.IF 존재 여부 : csv의 값

IF $sourceOutlookEmail IsNullOrWhitespace 
THEN $WriteEmail=$sourceEmail 
ELSE $WriteEmail=$sourceOutlookEmail 

난 그냥, 내가 '구문 올바른 얻을 수 없다 : 나는 기본적으로 할 필요

# Read contacts 
ForEach ($contact in $contactfile) { 

# Read attributes 
$sourceEmail=$contact.Email 
$sourceOutlookEmail=$contact.OutlookEmail 

그리고 :

은 그래서 CSV를 읽을 다음있어 나는 모든 종류의 물건을 시험해 보았다. 나는 그것이 비교적 간단하다는 것을 안다. 나는 그것을 작동시킬 수 없다.

답변

4

당신은 정적 .NET IsNullOrWhiteSpace 방법을 사용할 수 있습니다

if ([string]::IsNullOrWhiteSpace($sourceOutlookEmail)) 
{ 
    $WriteEmail=$sourceEmail 
} 
else 
{ 
    $WriteEmail=$sourceOutlookEmail 
} 
+0

아, OK, 대만족, 나는 몇 가지 유사한 사례에서 그 방법을 볼 수 있지만 값의 자리를 [문자열] 한 생각을 유지했던 나는 그곳에 정보를 입력해야했다. 실제로 "[string]"이라고 말하지는 않았다. 고마워! – km457

+0

업데이트 : 완벽하게 작동합니다. 감사합니다. – km457

+1

[관련 MSDN 기사] (https://msdn.microsoft.com/en-us/powershell/scripting/getting-started/cookbooks/using-static-classes-and-methods) :-) – sodawillow