私は、これはあなたがやろうとしているものだと思う:あなたの例で
$SEL = Select-String -Path C:\Temp\File.txt -Pattern "Test"
if ($SEL -ne $null)
{
echo Contains String
}
else
{
echo Not Contains String
}
、あなたが$SEL
と呼ばれる文字列を定義し、私がチェックしています(あなたが定義した文字列が$null
ではないので、もちろん常にfalse
に評価される!)Fは$null
に等しい。また
、ファイルにはパターンが含まれている場合、それはのようなものを返します。
C:\Temp\File.txt:1:Test
$SEL
が後方にある、
$null
あるとき、現在あなたが
Contains String
をエコーしているため
だから、あなたの-eq
-ne
に切り替えたり、周りのあなたのif/else
コマンドを交換してください。
PowerShell
での説明とすべてのための有用な例のためのチェックSS64とcmd
文字列がファイル内に存在するかどうかをチェックする別の方法は、次のようになります。
If (Get-Content C:\Temp\File.txt | %{$_ -match "test"})
{
echo Contains String
}
else
{
echo Not Contains String
}
が、これはそうではありませんの表示を与えます。ファイル内には、というテキストがあります。このメソッドは、ファイルの内容を最初にGet-Contents
としている点で異なっています。文字列が存在するかどうかを確認した後で、これらの要素に対して他の操作を実行する必要がある場合に便利です。
それは私のために働くことThx :) –