2017-04-10 35 views
3

我有一個csv輸入到PowerShell腳本,它有兩個電子郵件字段;一個總是包含一個值,另一個有時會存在,當後者存在時,我想用這個值來設置一個用於設置稍後在腳本中的mailcontact字段的值,對於變量$WriteEmailIF exists ELSE re:來自csv的值

所以我必須讀CSV如下:

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

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

而且我需要它基本上做到:

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

我只是不能得到正確的語法,我我嘗試了各種各樣的東西。我知道這是相對簡單的,我不能讓它工作。

回答

4

您可以使用靜態.NET IsNullOrWhiteSpace方法:

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

哦,沒關係,真不錯,我看到在幾個類似的例子是方法,但是想着想着[字符串]是一個佔位符的值我需要輸入那裏,而不是它應該實際上說「[字符串]」 要試用它,謝謝! – km457

+0

更新:完美的作品,謝謝。 – km457

+1

[相關MSDN文章](https://msdn.microsoft.com/en-us/powershell/scripting/getting-started/cookbooks/using-static-classes-and-methods):-) – sodawillow