Batch file 批处理文件中出现意外引用,但在cmd中工作正常
我有一组非常简单的命令,只需创建一个Citrix用户登录到机器上的文本,然后读入该文件,获取会话id,使用该id注销用户,然后删除创建的文本文件。当我手动在命令行中输入这些时,这是完美的,但我希望将它们放入批处理文件中。当我尝试运行批处理文件时,它似乎会立即启动然后停止。我尝试过使用暂停和超时来调试它,通过这样做,我发现问题在于我用来注销用户的循环是问题所在。你能帮忙吗Batch file 批处理文件中出现意外引用,但在cmd中工作正常,batch-file,citrix,Batch File,Citrix,我有一组非常简单的命令,只需创建一个Citrix用户登录到机器上的文本,然后读入该文件,获取会话id,使用该id注销用户,然后删除创建的文本文件。当我手动在命令行中输入这些时,这是完美的,但我希望将它们放入批处理文件中。当我尝试运行批处理文件时,它似乎会立即启动然后停止。我尝试过使用暂停和超时来调试它,通过这样做,我发现问题在于我用来注销用户的循环是问题所在。你能帮忙吗 query user | FIND "citrix" > C:\tempCirtixUsers.txt &&am
query user | FIND "citrix" > C:\tempCirtixUsers.txt && FOR /F "eol=; tokens=2,3* delims=, " %i in (C:\tempCirtixUsers.txt) do logoff %i
您需要将批处理文件中的
%
符号加倍,并在cmd提示符中使用single
FOR /F "eol=; tokens=2,3* delims=, " %%i in (C:\tempCirtixUsers.txt) do logoff %%i