迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

在 PowerShell 中获取远程计算机上的注册表

作者:迹忆客 最近更新:2024/03/01 浏览次数:

在本文中,我们将讨论如何在远程计算机上调用表达式、获取注册表值,以及如何将它们结合起来在远程计算机上获取注册表值。


PowerShell 中的 Invoke-Expression

根据微软官方描述,Invoke-Expression 命令运行或评估特定字符串作为命令并导出命令或表达式的结果。

换句话说,它可以帮助调用脚本中的代码或构建稍后执行的命令。但是,我们也可以通过用户提供的输入谨慎地使用它。

使用 Invoke-Expression 的最基本语法是定义一个脚本并将该字符串传递给 Command 参数。Invoke-Expression 然后执行该字符串。

$Command = 'Get-Process'
Invoke-Expression -Command $Command

#Execute a script via Invoke-Expression
$MyScript = '.\MyScript.ps1'
Invoke-Expression -Command $MyScript

但是,如果我们将路径项括在单引号或双引号中,Invoke-Expression 将按预期执行脚本。将此视为最佳实践,因为某些路径中有空格。

$MyScript = "C:\'Folder Path'\MyScript.ps1"
Invoke-Expression $MyScript

Invoke-Expression 命令的唯一参数是 -Command 参数。没有其他传统方法可以使用 Invoke-Expression 传递参数。

但是,你可以将它们包含在你提供给 Command 参数的字符串中。

也许我们有一个带有两个参数的脚本,称为 PathForce。除了通过 Invoke-Expression 使用特定参数外,你还可以像通常通过控制台一样将参数传递给该脚本。

$scriptPath = 'C:\Scripts\MyScript.ps1'
$params = '-Path "C:\file.txt" -Force'
Invoke-Expression "$scriptPath $params"

# or

$string = 'C:\Scripts\MyScript.ps1 -Path "C:\file.txt" -Force'
Invoke-Expression $string

在 PowerShell 中使用 Get-ItemProperty 获取注册表

Get-ItemProperty 是一个 PowerShell 命令,用于以更易读的格式导出注册表项和值。我们还可以使用 Get-ItemProperty cmdlet 获取特定注册表项的值。

示例代码:

Get-ItemProperty -Path Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion

输出:

ProgramFilesDir
CommonFilesDir
ProgramFilesDir (x86)
CommonFilesDir (x86)
CommonW6432Dir
DevicePath
MediaPathUnexpanded
ProgramFilesPath
ProgramW6432Dir
SM_ConfigureProgramsName
SM_GamesName

在 PowerShell 中使用 Invoke-Expression 和 Get-ItemProperty 获取远程计算机上的注册表

现在,假设我们结合了在远程计算机上调用命令和获取注册表项值这两个概念。在这种情况下,我们现在可以创建一个命令片段,用于获取远程计算机中的注册表值。

示例代码:

Invoke-Command -Computer RemoteComputer01 {
    Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\run
}

上一篇:检查 PowerShell 中是否存在文件夹

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Windows PowerShell 中终止脚本

发布时间:2024/02/29 浏览次数:121 分类:编程语言

本文将列举几种在 Windows PowerShell 中终止脚本的方法。本文将解释和定义所有几个命令,并引用示例脚本块来说明在何处使用它们。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便