【发布时间】:2015-10-15 19:17:59
【问题描述】:
以前在 Windows 7 中,我能够将 My Documents 文件夹的文件路径更改为网络映射(例如 H:\John Doe Documents)。由于我们已经切换到 Windows 7,因此我不得不使用一种解决方法,将 C 驱动器上的文件夹中的链接文件创建到映射位置,并在文件实际链接之前将其包含在“我的文档”库中。
我们当前的文件结构为 - \\servername\homefolder\%username%\John Doe Documents 或 \\servername\homefolder\%username%\johndoedocuments。创建符号链接时,我需要覆盖这两个文件夹。
这是我目前正在使用的脚本
@echo off
mkdir c:\Documents
echo.
echo.
echo Right click My Documents and add C:\Documents to the Library Locations.
echo.
echo.
pause
rd C:\Documents
mklink /D C:\Documents \\servername\homefolder\%username%\*documents\
目前这不起作用。如果我删除 *documents\ 它确实有效。我尝试这样做的原因是因为我们还将 Outlook 的用户 pst 文件存放在 \%username% 文件夹中,我们不希望用户看到该文件夹并可能将其删除。宁愿他们直接进入文档文件夹。
有什么帮助吗?希望这是我想念的简单的东西。提前致谢!
【问题讨论】:
-
不能像这样使用通配符;但是,我认为
Username Documents可能只是 Windows 的本地化名称,所以实际上它们很可能在驱动器上被称为Documents... -
这也是问题所在,我不是最初设置这些的人,所以一些用户设置为 -
h:\abc1234\johndoedocuments,其他用户设置为h:\abc1234\john doe documents。因此,如果可能,我试图让它在脚本中捕获其中一个文件名。很抱歉措辞上的混乱。我会解决的! -
如果你有一个用户列表,也许在一个文本文件中,你可以使用
for /F遍历它,并在循环内使用if exist建议的查询below;没有空格的版本可以使用字符串替换语法构建(参见set /?)然后...
标签: batch-file cmd mklink