我有下面的 Powershell 腳本,我正在努力完成它。
Get-ChildItem -Path 'C:\temp\xml' -Include '*.xml' |
ForEach-Object
{
$FileName = $_.Fullname
$Pattern = "</Date>"
$FileOriginal = Get-Content $FileName
$date = Get-Date
$DateStr = $date.ToString("yyyyMMdd")
[String[]] $FileModified = @()
Foreach ($Line in $FileOriginal)
{
$FileModified = $Line
if ($Line -match $pattern)
{
$FileModified = "<CDate>$DateStr</CDate>"
}
}
$FileModified = $FileModified -replace "CUR","PIT"
$FileModified = $FileModified -replace "Current","Time"
Set-Content $fileName $FileModified
}
當我嘗試運行它時,我收到以下訊息:
cmdlet ForEach-Object at command pipeline position 2
Supply values for the following parameters:
Process[0]:
誰能看到我做錯了什么?
uj5u.com熱心網友回復:
將花括號與 foreach-object 放在同一行:
echo hi | foreach-object {
$_
}
即使在腳本中,這也會失敗。它是一個 cmdlet,而不是像“if”這樣的陳述句,因此它需要在同一行上使用 -Process 引數。
echo hi | foreach-object
{
$_
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/370373.html
標籤:电源外壳
