[玩转系统] 新的 PSDrive 和其他 PowerShell 驱动器扭转了局面
作者:精品下载站 日期:2024-12-14 12:35:44 浏览:15 分类:玩电脑
新的 PSDrive 和其他 PowerShell 驱动器扭转了局面
如果您使用 PowerShell 来处理文件系统、注册表、证书甚至网络驱动器,则必须检查 PowerShell 驱动器。 PowerShell 驱动器或 PS 驱动器是 PowerShell 中的一个概念,允许您使用文件系统等结构化数据。 New PSDrive cmdlet 是开始的方式。
在本教程中,您将了解 PS 驱动器的工作原理、一些用于处理 PS 驱动器的 cmdlet,以及最终如何使脚本编写任务变得更轻松。
打开 PowerShell 控制台,让我们开始吧!
先决条件
本教程将是一个实践演示。如果您想继续操作,请确保您具备以下条件:
- Windows PC - 尽管 PS 驱动器可以在其他平台上的 PowerShell 中运行,但本教程中的所有演示都将使用 Windows。
- 如果您想观看其中一个演示,请提供可用的 SMB 网络共享。
使用 Get-PSDrive
检查 PS 驱动器
PowerShell 开箱即用,安装了一些默认驱动器。要查看这些驱动器,请运行 Get-PSDrive
命令。 PowerShell 将从熟悉的驱动器返回各种驱动器,例如文件系统驱动器(例如 C)或注册表驱动器(例如 HKLM 或 HKCU)。
Get-PSDrive
PS 驱动器所包含的数据类型因供应商而异。 PowerShell 使用这些提供程序来公开每个驱动器内的数据。您可以在上面看到 Get-PSDrive
已从八个不同的提供商返回驱动器。
您可以通过运行 Get-PSProvider
查找计算机上安装的所有提供程序。如下所示,不同的提供程序具有不同的功能,决定每个提供程序如何与当前 PowerShell 会话交互。
Get-PSDrive
还有一些方便的参数,例如 PSProvider
参数。此参数允许您过滤特定提供商返回的 PS 驱动器。您将在下面看到 Get-PSDrive
仅返回由 FileSystem
提供程序提供服务的驱动器。
Get-PSDrive -PSProvider FileSystem
导航 PS 驱动器
一旦您知道哪些 PS 驱动器可用,您就可以查看每个驱动器的内部内容。例如,Env
驱动器是包含 Windows 环境变量的默认 PS 驱动器。就像文件系统一样,您可以浏览环境变量。
要浏览 Env
驱动器,请使用 cd
或 Set-Location
更改为驱动器号,就像通常使用文件系统一样,然后运行 ls
或 Get-ChildItem
,如下所示。
记下每个示例末尾的冒号。您必须使用冒号来表示 PS 驱动器。
cd Env:
ls
运行 ls
后,如下所示,您将看到 PowerShell 返回 Windows 中每个环境变量的键/值对。
使用 New PSDrive
创建新的 PS 驱动器
您已经了解到,PowerShell 附带了一些内置 PS 驱动器,但您也可以使用 New-PSDrive
cmdlet 自行创建自定义驱动器。
New-PSDrive
cmdlet 最常见的用途之一是与 FileSystem
提供程序一起创建文件系统目录的“快捷方式”,甚至映射网络驱动器。使用 New-PSDrive 您可以将标签分配给各种文件系统位置。
使用 New-PSDrive
映射文件共享
例如,也许您的网络上有一个 SMB 文件共享,您需要将该共享映射到驱动器号。您可以通过 GUI 映射该网络驱动器,或者如果您更喜欢命令行或构建脚本,则可以使用 PowerShell。
在此示例中,假设您的网络共享位于 UNC 路径 \localhost\PSDRIVE
。
本地计算机 (localhost
) 仅用作示例。您可以以同样的方式使用 New-PSDrive
映射实际的网络驱动器。
要使用 New PSDrive 映射网络驱动器,请提供:
- 您要创建的驱动器的
名称
(本例中为NetShare
)。 - 驱动器将使用的提供程序 (
PSProvider
) 类型(本例中为FileSystem
)。 - 使用
Root
参数的文件共享或\localhost\PSDRIVE
的路径。
运行 New-PSDrive
,如下所示,然后运行 Get-ChildItem
以查看文件共享中的内容。
New-PSDrive -Name "NetShare" -PSProvider "FileSystem" -Root "\localhost\PSDRIVE"
Get-ChildItem -Path NetShare:
您会发现,现在引用 NetShare
与直接引用 \localhost\PSDRIVE
是一样的。
需要为您的新驱动器分配一些注释吗?也许用于存储文档的文件共享
?使用 Description
参数,例如 -Description 'The file share to store docs'
。
使用适用于 Windows GUI 的文件系统 PS 驱动器
在上面的示例中,PS 驱动器仅在 PowerShell 中显示。以这种方式使用 New PSDrive 在技术上并不像 GUI 那样映射网络驱动器。但是,您仍然可以通过添加 Persist
参数来完成此操作。
Persist
参数告诉 New PSDrive 将驱动器公开给 Windows,而不是 PowerShell。例如,您可以使用以下命令将 X
驱动器映射到 \WDMYCLOUD\Garry
文件共享。
New-PSDrive -Name "X" -PSProvider "FileSystem" -Root "\WDMYCLOUD\Garry" -Persist
您现在将看到 X 驱动器显示在 Windows 文件资源管理器中。
为长目录路径创建文件系统 PS 驱动器
除了映射文件共享之外,您还可以使用 New-PSDrive
cmdlet 创建 PS 驱动器,这样还可以节省一些打字时间!通过基于某些长目录路径创建驱动器,您可以将名为 C:\thisisareallylongdirectorypath\Ido\not\want\totype 的目录更改为简单的 C:\LongDirPath.
为了演示实际示例,Microsoft SQL Server2019 默认情况下将其日志存储在 C:\Program Files\Microsoft SQL Server\MSSQL15.SQL2019\MSSQL\Log 目录中。如果您经常发现自己在 PowerShell 中更改到该目录,那么每次快速键入该目录都会变得过时。
不要输入长目录路径,而是使用 New-PSDrive
创建一个名为 sqllog
的 PS 驱动器。创建好后,直接改成不带原来的目录路径,而是带PS盘名。
New-PSDrive -Name sqlLog -PSProvider "FileSystem" -Root "C:\Program Files\Microsoft SQL Server\MSSQL15.SQL2019\MSSQL\og"
Set-Location sqlLog:
与注册表合作
PS 驱动器不仅仅属于文件系统。请记住,PS 驱动器使用不同的提供商。这些提供商之一是注册表。使用您所学的相同技术,您还可以创建任何您想要的注册表项的“快捷方式”。
要在注册表提供程序上创建 PS 驱动器,请将 Registry
参数传递给 PSProvider
参数,并使用 Root 的注册表项路径(而不是目录路径)
,如下所示。请注意,此示例还使用了可选的 Description
参数来设置 PS 驱动器上的描述。
New-PSDrive -Name "myRegistry" -PSProvider "Registry" -Root "HKLM\Software" -Description 'my local Registry key'
创建后,运行 Get-PSDrive
来检查您的工作。以下示例使用 Format-Table
cmdlet 将输出限制为仅 Name
和 Description
属性。默认情况下,Description
属性不可见。
使用 Remove-PSDrive
删除 PS 驱动器
最后,也许您已经完成了 PS 驱动器的使用,是时候进行清理了。为此,请使用 Remove-PSDrive
cmdlet。使用 Remove-PSDrive
cmdlet 最直观的方法之一是使用 PowerShell 管道。通过“管道”PS 驱动器到 Remove-PSDrive
,您可以一次删除一个或多个驱动器。
例如,也许您已遵循本教程中的所有示例,并希望将它们全部删除。不要运行 Remove-PSDrive
三次,而是使用 Get-PSDrive
读取它们并将每个驱动器通过管道传输到 Remove-PSDrive
,如图所示以下。
Get-PSDrive -Name NetShare, sqlLog, X | Remove-PSDrive -Force -Scope Global
请注意,下面每个 PS 驱动器都是之前创建的,但运行上述命令已将它们全部删除。
请注意,Force
和 Scope
参数是可选的。即使文件已打开,Force
参数也会删除 PS 驱动器,而 Scope
会删除使用 New-PSDrive -Scope
在全局范围中定义的驱动器参数。
结论
PS 驱动器可以节省大量时间,并帮助您更轻松地浏览文件系统、注册表和其他数据源。您是否受到启发,想要在脚本中尝试 PS 驱动器?如果是这样,怎么办?
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag