Powershell 输出日志文件

Powershell Outputting a Log File

您好,我是新脚本,我的任务是创建一个脚本,该脚本将从特定文件夹中删除一个文件,该文件将通过 SCCM 部署到多台计算机上。

问题是我想输出日志文件说:

"<ComputerName> File Terminated"
"<ComputerName> File Not terminated"

这是我目前的情况:

$users = "C:\Users"
$logFile = "C:\TTS\Logs\GoogleTerm.log"
$source = "\AppData\Roaming\Google"
$exclude = "Default"

$input = get-ChildItem -Path $users  

foreach ($folder in $input) {
    if ($exclude -notcontains $folder.Name) {
        Remove-Item -Path ($Users + "\" + $folder.Name + $source) -recurse -force 
    } 
}

echo "Google Terminated on:"$env:computername >> $logfile

添加了 else to your if to handle both outcomes, and then using Add-Content 而不是 echo

foreach ($folder in $input) {
    if ($exclude -notcontains $folder.Name) {
        Remove-Item -Path ($Users + "\" + $folder.Name + $source) -recurse -force 
        Add-Content $logfile "$env:computername File Terminated"
    } 
    else {
        Add-Content $logfile "$env:computername File Not Terminated"
    }
}

Add-Content $logfile "Google Terminated on: $env:computername"

这是我成功的解决方案,谢谢大家的帮助!

$users =  "C:\Users"

$logFile = "C:\TTS\Logs\GoogleTerm.log"


$exclude = "Default"



$input = get-ChildItem -Path $users 



foreach ($folder in $input) {
if ($exclude -notcontains $folder.Name) {
    if (Test-Path ($Users + "\" + $folder.Name + $source)){
    Remove-Item -Path ($Users + "\" + $folder.Name + $source) -recurse -force

    Add-Content $logFile "Google Terminated on:        $env:computername      UserName:$folder  "
   }
   else{
    Add-Content $logFile "Google Already Terminated on:$env:computername      UserName:$folder  "
   }
}
   else{
        Add-Content $logFile "Not Terminated on:           $env:computername      Username:$folder"
   }
}