私は、PowerShellスクリプトをまとめてtxtログファイルを実行し、ドメイン名/ URLを削除しようとしています。ファイル内の文字列を置き換えようとしましたが、置き換えようとしました
これまでのところ、私はファイルの置き換えを行っていますが、これを試してみると、期待通りの動作をしていません。私が入ったテキストファイルがある場合
は:DOMAIN1とintranet.contoso.com交換する
intranet.contoso.comと私のスクリプトを実行した後、いくつかのテキスト
を行うには、私が希望置きますDOMAIN1tDOMAIN1eDOMAIN1xDOMAIN1tDOMAIN1
DOMAIN1 DOMAIN1aDOMAIN1nDOMAIN1dDOMAIN1 DOMAIN1sDOMAIN1oDOMAIN1mDOMAIN1eDOMAIN1あり得ます
私はどこが間違っているのか分かりません。他の2つの答えが指摘するように私のコードは、これまでのところ、配列-の-配列はそれを修正コンマ大手を落とす,(x,y,),(foo,bar)" syntax. Use of
`@または単純に混乱している
$domains = ,("mydomain.net","mydomain"),("yourdomain.net","yourdomain"),("mydomain2.net","mydomain2")
$path = Read-Host "Please enter the full path to the directory containing the files to be sanatized"
$files = Get-ChildItem –Path $path *.txt
foreach ($file in $files)
{
for($x=0; $x -lt $domains.Count; $x++)
{
(Get-Content $file.PSPath) |
Foreach-Object { $_ -replace $domains[$x][0], "DOMAIN$($x+1)" } |
Set-Content $file.PSPath
(Get-Content $file.PSPath) |
Foreach-Object { $_ -replace $domains[$x][1], "DOMAIN$($x+1)" } |
Set-Content $file.PSPath
}
}
私はpowershellにかなり新しいですので、これは私より多くの方法で私を助けました!乾杯!! – user1865044