使用 Windows CMD 将文件复制到 LAN 网络中的所有计算机

使用 Windows CMD 将文件复制到 LAN 网络中的所有计算机

我需要将文件复制到本地网络中所有计算机的所有用户的“%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup”文件夹中。如果需要,我在所有计算机上都拥有管理员权限,但想法是将文件从一台计算机共享给所有计算机。我知道我有命令“net”,但我真的不知道应该使用什么来完成这个过程。

答案1

CMD 中一个好的起点是这样的:

xcopy "c:\path\to\file" "\\computername\C$\users\username\appdata\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\"

或者在 Powershell 中同样的事情:

Copy-Item "c:\path\to\file" "\\$Computername\C$\users\$username\appdata\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\"

当然,有方法可以循环遍历用户/计算机列表,但这取决于您计划如何定义和/或获取这些列表。例如,您可以扫描整个本地网络,但速度会非常慢。网络上还有很多事情需要考虑,例如防火墙设置或 PC 是否在 Windows 域中。


要检查访问权限,请尝试通过将 UNC 路径粘贴到文件资源管理器中来浏览远程 PC:。\\computername\C$\如果它提示您输入凭据,您也需要在命令中提供它们。

对于不在 Windows 域中的计算机,通常需要使用格式如下的用户名登录RemotePCName\Username。如果您能够使用 Windows 资源管理器登录,则可以尝试使用 Powershell 执行相同操作:

# This will prompt you for login credentials
$Credential = Get-Credential

# connect to the remote PC as a specific user
New-PSDrive -Name RemotePC -PSProvider FileSystem -Root \\RemotePC\C$ -Credential $Credential

# Now copy the file using the connection:
Copy-Item "c:\path\to\file" "RemotePC:\users\$username\appdata\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\"

相关内容