update nextcloud, update tools
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
## Stop a process
|
||||
Function End-Process
|
||||
{
|
||||
param(
|
||||
[Parameter(Mandatory=$true,ValueFromPipeline=$true)][string[]]$Name,
|
||||
[Parameter(Mandatory=$false)][switch]$Match=$false,
|
||||
[Parameter(Mandatory=$false)][switch]$Force
|
||||
)
|
||||
ForEach ( $item in $Name ) {
|
||||
$process = Get-Process -Name $item -ErrorAction SilentlyContinue
|
||||
If ( !($process) ) {
|
||||
LogMsg "Cannot find the process '${item}'"
|
||||
If ( $Match ) {
|
||||
LogMsg "Attempting to match '${item}' to all running process names"
|
||||
ForEach ( $proc in ((Get-Process | Where { $_.Name -match $item }).Name) ) {
|
||||
If ( $Force ) { End-Process -Name $proc -Force } Else { End-Process -Name $proc }
|
||||
}
|
||||
}
|
||||
}
|
||||
Else {
|
||||
$name = $process.Name
|
||||
If ( $Force ) {
|
||||
LogMsg "Forcefully stopping '${name}' process"
|
||||
Stop-Process $process -Force -ErrorAction SilentlyContinue
|
||||
}
|
||||
Else {
|
||||
LogMsg "Attempting to gracefully close '${name}' process"
|
||||
$process.CloseMainWindow() | Out-Null
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user