当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell 重命名项目 |在 Power Shell 中重命名项目的过程

作者:精品下载站 日期:2024-12-14 04:54:44 浏览:14 分类:玩电脑

PowerShell 重命名项目 |在 Power Shell 中重命名项目的过程


[玩转系统] PowerShell 重命名项目 |在 Power Shell 中重命名项目的过程

PowerShell 重命名项目简介

PowerShell 中的 rename-Item cmdlet 会重命名文件、文件夹、注册表、证书等项目。此 cmdlet 会重命名项目,但不会重命名其实际内容,或者无法将项目移动到其他位置。

语法:

Rename-Item
[-Path] <String>
[-LiteralPath] <String>
[-NewName] <String>
[-Force]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTranscation]
[<CommonParameters>]

PowerShell 重命名项中的参数

以下是 PowerShell 重命名项的参数:

  • 路径:项目的源路径。该路径应该是字符串格式并且必须相同。您可以指定通配符 (*),但路径应仅解析一项而不是多项。
  • 新名称:目标文件名。默认情况下,它将采用相同的源路径;明确指定不同的路径将产生错误。您不能在新名称中使用通配符 (*)。可以重命名多个文件和扩展名。
  • 强制:重命名无法更改的项目名称。对于只读或隐藏的文件或文件夹,此参数允许它们强制重命名。该参数不能更改常量别名或变量。
  • PassThru:默认情况下,Rename-Object 不会生成任何输出。该参数允许输出显示在控制台中。
  • 凭据:如果您的目标项目位于不同的域或工作组中,您可以使用此参数将目标路径与不同的凭据连接起来。
  • Whatif:此参数用于通知如果运行此命令但未实际运行该命令,将执行什么操作。
  • LiteralPath:此参数还指定要重命名的项目的路径。没有字符被解释为通配符。如果路径包含唯一字符,则必须将它们括在单引号中,以便 PowerShell 不会将任何字符解释为转义序列。
  • 确认:此参数会在对项目执行重命名操作之前提示用户。
  • UseTranscation:此参数包括活动事务中的命令。该参数仅在交易进行时有效。
  • 通用参数支持以下参数。 ErrorAction、ErrorVariable、WarningAction、WarningVariablem OutBuffer、PipelineVariable 和 OutVariable。

实施 PowerShell 重命名项目的示例

下面是在 PowerShell Rename-Item 中实现的示例:

示例 #1 - 重命名项目

代码:

Rename-Item D:\Temp\Putty.log -NewName Putty1.log

在上面的示例中,当您不提供要重命名的文件的目标路径时,默认情况下它将采用相同的源路径。您还可以在不指定 -Newname 参数的情况下重命名项目。为此,请在旧名称和新名称之间提供空格。例如,

Rename-Item D:\Temp\Putty.log Putty1.log

您还可以重命名该文件夹,如下所示。

Rename-Item D:\Temp -NewName Temp1

示例 #2 - 使用 Passthru 参数重命名项目

要检查控制台中的命令输出,请使用 -Passthru 参数。

代码:

Rename-Item D:\Temp\Putty.log -NewName Putty1.log -PassThru

输出:

[玩转系统] PowerShell 重命名项目 |在 Power Shell 中重命名项目的过程

提供不同的目标路径将生成错误,因为此 cmdlet 无法执行移动操作。

Rename-Item D:\Temp\putty.log -NewName D:\putty1.log -PassThru

输出:

[玩转系统] PowerShell 重命名项目 |在 Power Shell 中重命名项目的过程

示例 #3 - 使用 Whatif 参数重命名-ChildItem

当您使用 Whatif 参数时,它将显示将执行的操作命令,而无需实际运行该命令。

Rename-Item D:\Temp\cars.xml -NewName cars1.xml -PassThru -WhatIf

输出:

[玩转系统] PowerShell 重命名项目 |在 Power Shell 中重命名项目的过程

示例#4 - 使用Confirm参数重命名ChildItem

此参数将在重命名项目之前要求用户确认。

代码:

Rename-Item D:\Temp\cars.xml -NewName cars1.xml -Confirm

输出:

[玩转系统] PowerShell 重命名项目 |在 Power Shell 中重命名项目的过程

您还可以提供值 $true 或 $false 来确认该参数。当提供 $true 值时,将提示用户确认。当您提供 $false 值时,它不会提示用户确认并直接重命名该项目,这是 -confirm 参数中的默认选项。

Rename-Item D:\Temp\cars.xml -NewName cars1.xml -Confirm:$true
Rename-Item D:\Temp\cars.xml -NewName cars1.xml -Confirm:$false

示例#5 - 重命名注册表值

与文件重命名一样,您也可以重命名注册表值。

代码:

Rename-Item HKLM:\SYSTEM\CurrentControlSet\Control\test -NewName Test2
Rename-Item HKLM:\SECURITY\Policy\Data -NewName Data1

示例 #6 - 使用 Rename-Item 重命名多个文件扩展名

要重命名多个文件扩展名,您可以使用以下命令来替换它们。

代码:

PS C:\WINDOWS\system32> Get-ChildItem D:\Temp\* -Include *.html | Rename-Item -NewName {$_.Name -replace '.html','.htm'} -PassThru

要重命名多个文件或文件夹,需要使用循环。

输出:

[玩转系统] PowerShell 重命名项目 |在 Power Shell 中重命名项目的过程

结论

Rename-Item 是一个优秀的工具,可以重命名单个或多个文件、扩展名、文件夹、注册表等。但它不能移动或复制文件。对于他们来说,有不同的 cmdlet 可用。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯