PowerShell 桌面变量
PowerShell Desktop Variable
我正在尝试编写 PowerShell 脚本以在通过 sccm 安装后删除 Chrome 的桌面图标。然而,网络中的某些用户将他们的桌面定向到网络上的不同文件夹。 PowerShell 中是否有存储桌面位置的变量?
我已经在网上查看并使用 Get-Variable | Out-String
进行了搜索,但我没有找到任何东西。完成的代码应如下所示:
If (Test-Path "$DesktopLocation\Google Chrome.lnk"){
Remove-Item "$DesltopLocation\Google Chrome.lnk"
}
您可以使用 Environment.GetFolderPath()
method 获取特殊文件夹的完整路径:
$DesktopPath = [System.Environment]::GetFolderPath([System.Environment+SpecialFolder]::Desktop)
这可以缩短为:
$DesktopPath = [Environment]::GetFolderPath("Desktop")
您还可以获得“AllUsers”共享桌面文件夹(如果快捷方式文件在所有用户之间共享):
[Environment]::GetFolderPath("CommonDesktopDirectory")
查看 SpecialFolder
Enum 的完整值列表。
您正在寻找的是 $home
变量。它是 PowerShell 的内置 automatic variables.
之一
它默认为用户配置文件路径,因此向下钻取到桌面,如下所示:
If (Test-Path "$home\Desktop\Google Chrome.lnk") {
Remove-Item "$home\Desktop\Google Chrome.lnk"
}
如果您需要 $Desktop\a.txt,请使用此
echo ([Environment]::GetFolderPath("Desktop")+"\a.txt")
我正在尝试编写 PowerShell 脚本以在通过 sccm 安装后删除 Chrome 的桌面图标。然而,网络中的某些用户将他们的桌面定向到网络上的不同文件夹。 PowerShell 中是否有存储桌面位置的变量?
我已经在网上查看并使用 Get-Variable | Out-String
进行了搜索,但我没有找到任何东西。完成的代码应如下所示:
If (Test-Path "$DesktopLocation\Google Chrome.lnk"){
Remove-Item "$DesltopLocation\Google Chrome.lnk"
}
您可以使用 Environment.GetFolderPath()
method 获取特殊文件夹的完整路径:
$DesktopPath = [System.Environment]::GetFolderPath([System.Environment+SpecialFolder]::Desktop)
这可以缩短为:
$DesktopPath = [Environment]::GetFolderPath("Desktop")
您还可以获得“AllUsers”共享桌面文件夹(如果快捷方式文件在所有用户之间共享):
[Environment]::GetFolderPath("CommonDesktopDirectory")
查看 SpecialFolder
Enum 的完整值列表。
您正在寻找的是 $home
变量。它是 PowerShell 的内置 automatic variables.
它默认为用户配置文件路径,因此向下钻取到桌面,如下所示:
If (Test-Path "$home\Desktop\Google Chrome.lnk") {
Remove-Item "$home\Desktop\Google Chrome.lnk"
}
如果您需要 $Desktop\a.txt,请使用此
echo ([Environment]::GetFolderPath("Desktop")+"\a.txt")