【问题标题】:batch script - map network drives by computer name批处理脚本 - 按计算机名称映射网络驱动器
【发布时间】:2013-06-13 18:00:24
【问题描述】:

我正在尝试修改由域 GPO 作为登录脚本执行的当前脚本。我有一个特殊情况,如果用户登录到域上的特定机器,我需要映射不同的网络驱动器。否则所有其他计算机都会加载基本驱动器映射。

我尝试了以下两种方法都没有成功:

echo %COMPUTERNAME% | %SYSTEMROOT%\System32\find.exe /i "VMMACHINE" > nul:
if %ERRORLEVEL% EQU 0 goto VMMACHINE-DRIVES

我试过了

if %COMPUTERNAME% EQU "VMMACHINE" goto VMMACHINE-DRIVES

谁能帮忙?

【问题讨论】:

标签: windows batch-file network-drive


【解决方案1】:

我想你想要:

if "%COMPUTERNAME%" == "VMMACHINE" goto VMMACHINE-DRIVES

添加"%COMPUTERNAME% 解释为字符串,添加== 进行字符串比较。

【讨论】:

  • 感谢您的帮助。在 %COMPUTERNAME% 周围添加 "" 就达到了效果。
【解决方案2】:

如果两边都用双引号括起来并且两个字符串的大小写正确,则该语法将起作用。

if "%COMPUTERNAME%" EQU "VMMACHINE" goto :VMMACHINE-DRIVES

这也应该有效。除了 : on nul: 之外,您的代码看起来还不错,这可能有效但不经常使用。这使用错误级别运算符 && 和补码是 ||

echo %COMPUTERNAME% | find.exe /i "VMMACHINE" > nul && goto :VMMACHINE-DRIVES

【讨论】:

    猜你喜欢
    • 2021-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-08
    • 1970-01-01
    • 1970-01-01
    • 2018-07-18
    • 2015-05-16
    相关资源
    最近更新 更多