批处理文件中包含以下内容
for /f "delims=" %%a in ("C:\Program Files (x86)\Wowza\creds.txt") do set %%a
net use J: https://csv/dav %p% /user:%u% /persistent:yes
我得到一个错误:
Environment variable C:\Program Files (x86)\Wowza\creds.txt not defined
我需要解决什么?
第二,它适用于除一位同事之外的所有同事。同一台笔记本电脑可以制造,建模和构建。我使用了我的详细信息,但失败了,但对我有用。
失败的是,它要求凭据映射驱动器而不是从文件中获取
creds.txt
u:JoeBloggs
p:Password1234
有什么主意吗?
谢谢
答案 0 :(得分:1)
出现错误消息的原因是,您的for /f
循环未评估文件的内容。它使用带引号的字符串作为字符串而不是文件名。 Usebackq
改变了行为。
您的脚本还有另一个失败:对于您的代码,set %%a
转换为set u:JoeBloggs
,这是无效的语法。正确的语法要求set u=Joebloggs
。因此,您必须将行拆分为在冒号之前的部分和在冒号之后的部分,并相应地构建set
命令(当文件内容看起来像{{ 1}})
将您的set %%a
循环更改为:
u=JoeBloggs
答案 1 :(得分:0)
我本来要对@stephan发表类似的答案,但他击败了我。但是,如果您可以选择将creds.txt
文件更改为以下内容:
u=JoeBloggs
p=Password1234
您可以将for
循环缩短一点:
for /f "usebackq delims=" %%a in ("C:\Program Files (x86)\Wowza\creds.txt") do set "%%~a"
实际上可以做到这一点:
set "u=JoeBloggs"
set "p=Password1234"