2016-03-08 180 views
-1

我想让我的脚本在有人从CSV文件输入错误的主机名时输出错误。如何检查字符串是否在字符串列表中

这里是脚本我有

#get content from file 
$data= import-csv ".\Earliest Date Template.csv" 

#which Hostname do you want to look up 
$hostid=Read-Host "Please enter Hostname" 

#Error Conditions 
$spellingerror=$hostid -notmatch "Hostname" 

if ($spellingerror) 
    {Write-Host -foregroundcolor Green "Hostname does not exist"} 
else 
    {$data | Sort-Object {[DateTime]$_."Last Modified"} | 
    Where-Object {$_."Hostname" -eq $hostid} | Select -First 1 -  
    ExpandProperty "Last Modified" 
    } 
Break 

的脚本设计要求的主机,他们想了解的用户,当它第一次修改,如果主机名不存在吐出它不存在。 无论我做什么,它不断吐出主机名不存在。

以下是我的CSV文件内容示例。

Hostname Last Modified 
HD   9/8/2012 
LOG   9/15/2004 
NETMAN  12/25/2004 
NETMAN  5/5/2015 
LOG  2/14/2013 
LOG  6/6/2011 

回答

2

尝试使用这种错误情况:

$spellingerror = $hostid -notin $data.hostname 
+0

,你真棒奏效 – ShanayL

+0

预PS 3.0:'($数据|%{$ _主机名})-notcontains $ hostid' –

+0

感谢我其实也需要这个 – ShanayL

相关问题