我基本上打算编写一个脚本来检查网络上特定文件中是否存在某个字符串,并返回0或1。
基本上是这样的:
If "C:\myfile.xls" exists THEN
If "C:\myfile.xls" contains string "no data found" THEN
Return 0
ELSE
Return 1
ELSE
Return 0
END
这可能吗?非常感谢提前!!
我相信我正在运行v2.0
Name Value
---- -----
CLRVersion 2.0.50727.5466
BuildVersion 6.1.7601.17514
PSVersion 2.0
WSManStackVersion 2.0
PSCompatibleVersions {1.0, 2.0}
SerializationVersion 1.1.0.1
PSRemotingProtocolVersion 2.1
答案 0 :(得分:1)
除非您希望答案是“是”或“否”,否则不应该问是/否问题。在你的情况下它是“是”,但你需要在主机上安装Excel:
function Check-File($filename) {
$found = 0
if ( Test-Path -LiteralPath $filename ) {
$xl = New-Object -COM "Excel.Application"
$wb = $xl.Workbooks.Open($filename)
if ( [bool]$xl.Cells.Find("no data found") ) { $found = 1 }
$wb.Close()
$xl.Quit()
}
$found
}
Check-File "C:\myfile.xls"