Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 使用命令行将硬盘映像文件映射到分区_Windows_Powershell_Cmd_Roaming Profile - Fatal编程技术网

Windows 使用命令行将硬盘映像文件映射到分区

Windows 使用命令行将硬盘映像文件映射到分区,windows,powershell,cmd,roaming-profile,Windows,Powershell,Cmd,Roaming Profile,我有一个包含数百个硬盘映像文件(.vhdx)的目录,每个文件都包含用户配置文件目录(C:\Users\xxx)。当我使用文件资源管理器单击文件时,它会自动装入,我可以访问其中的文件。我在用命令重新创建相同的命令时遇到问题 我不知道给定SID的用户名是什么-我只需要在每个配置文件中修改一个文件 示例文件:E:\profiles\UVHD-S-1-5-21-1614895754-1035525444-839522115-21214.vhdx 我曾尝试使用net use、dism和subst但是我无法

我有一个包含数百个硬盘映像文件(.vhdx)的目录,每个文件都包含用户配置文件目录(C:\Users\xxx)。当我使用文件资源管理器单击文件时,它会自动装入,我可以访问其中的文件。我在用命令重新创建相同的命令时遇到问题

我不知道给定SID的用户名是什么-我只需要在每个配置文件中修改一个文件

示例文件:
E:\profiles\UVHD-S-1-5-21-1614895754-1035525444-839522115-21214.vhdx


我曾尝试使用
net use
dism
subst
但是我无法让任何一个都正常工作。

您可以使用
New PSDrive
来管理此功能(尽管我没有ISO可供测试):

然后,您可以像这样访问它:

Set-Location 'vdh:\Users\etc'

编辑:

事实证明,有一整套命令可以与Hyper-V交互。我建议,然后

有一个
Mount-VHD
cmdlet,它的设计正是为了满足您的需要


注意:这些命令似乎仅限于Windows Server 2012+和Windows 8+

net use
用于映射SMB共享,
dism
用于处理.wim映像,
subst
用于将本地路径映射到驱动器号。它们都不适合使用VHD(X)文件。或者声称是,就这一点而言

在较新的Windows版本(从Windows8 IIRC开始)中,您有类似或用于处理Hyper-V虚拟硬盘的cmdlet。在Windows7上,您需要使用

连接虚拟硬盘:

@'
select vdisk file="C:\path\to\your.vhdx"
attach vdisk
'@ | diskpart
@'
select vdisk file="C:\path\to\your.vhdx"
detach vdisk
'@ | diskpart
分离虚拟硬盘:

@'
select vdisk file="C:\path\to\your.vhdx"
attach vdisk
'@ | diskpart
@'
select vdisk file="C:\path\to\your.vhdx"
detach vdisk
'@ | diskpart

一旦知道了该命令,堆栈溢出可以帮助您实现自动化。但找到命令不是编程问题。请尝试超级用户或服务器故障。