【发布时间】:2015-02-26 05:20:38
【问题描述】:
我正在尝试创建一个将文件复制到远程用户桌面的脚本。两台计算机将位于同一域中的同一网络上。
到目前为止,我有一个看起来像这样的批处理脚本:
@echo off
set /p user="Username of remote user: "
set /p hostname="Target computer name: "
xcopy [path to local file] "\\%hostname%\c$\Users\%user%\Desktop\"
上面的脚本只适用于 Windows 7。有没有办法让它在复制之前以某种方式检测父文件夹是否存在,然后是否复制?或者这可以通过环境变量来实现吗?
如果我只是让上面的脚本按原样运行并且目标计算机正在使用 Windows XP,那么将创建一个新的目录树,这是我想避免的。
https://support.microsoft.com/kb/65994 在检查本地系统时会起作用,但我正在尝试查看远程计算机的目标文件夹是否存在。我不明白这篇文章是如何回答这个问题的。
【问题讨论】:
-
1.不要覆盖
username环境变量,甚至暂时不要。 2.在XP,我猜Users文件夹命名为Documents and Settings。 -
JosefZ 不错。我实际上在我正在使用的真实脚本中使用了一个不同的变量,只是因为我使用了一个特定于我公司的术语而对其进行了更改。
-
@RobertHarvey 我不认为这个问题与检查文件夹是否存在重复。恕我直言,OP 要求 what-if “远程计算机可能是 Windows 7 或 XP?”而是。
-
@RyanBemrose 如果是我的选择,我会心跳加速。我不需要设置预算,我只是为用户提供支持。
标签: windows batch-file cmd xcopy