windows - 在数组中查找变量 - 批处理

标签 windows batch-file dos

我想通过批处理文件创建一个基于windows用户名的快捷方式

我的思路是:

if %username% in (a,b,c,d) (
    shortcut ShortcutName DestinationPath
)
else (
    shortcut OtherShortcutName OtherDestinationPath
)

我对第一部分有疑问,因为我已经知道如何通过命令行创建快捷方式...

希望我能找到一些帮助。

最佳答案

批处理文件中并没有真正的数组类型,但我们可以通过使用 for 遍历空格分隔的列表来捏造它:

@ECHO OFF
set Array=Peter James Robby Jimmy

for %i in (%array%) do (if %i==%USERNAME% (echo %USERNAME% is found) else (echo %USERNAME% not found))

如果 Robby 已登录,则输出为:

Not found
Not found
Robby is found
Not found

关于windows - 在数组中查找变量 - 批处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19168357/

相关文章:

dos - 批处理文件中的昨天日期

c# - 服务应用程序将不会保持运行

windows - 在 C :\ProgramData\中写入时的权限/所有者问题

windows - 是否可以使用批处理编程在命令提示符上输出当前颜色代码?

batch-file - 用于在文本文件中查找和替换字符串的批处理脚本,而无需创建额外的输出文件来存储修改后的文件

scripting - 带有 unc 路径的 xcopy 添加虚拟网络驱动器

c++ - 创建虚拟分区

c - 如何以编程方式扩展卷

Windows 批处理文件 - 系统找不到指定的批处理标签

c++ - IRQ 8 不工作...硬件还是软件?