cmd /C 设置变量



短:我正在尝试制作一个 1 行命令脚本来设置和使用变量。现在我想出了:

cmd /C "set var=127.0.0.1 & echo %var%"

我希望它输出 127.0.0.1,但它打印 %var%。

长:我正在使用keepass作为密码管理器,并试图让它自动为我启动RDP会话。我将以下内容放在 URL 中:

cmd://cmd /C "cmdkey /generic:TERMSRV/127.0.0.1 /user:{USERNAME} /pass:{PASSWORD} & mstsc.exe /v:127.0.0.1 & cmdkey /delete:TERMSRV/127.0.0.1"

这有效,但是如果我需要更新 IP 地址,我必须触摸 3 个位置,而不仅仅是 1 个。我尝试将其更改为以下内容,但没有用:

cmd://cmd /C "set sServer=127.0.0.1 & cmdkey /generic:TERMSRV/%sServer% /user:{USERNAME} /pass:{PASSWORD} & mstsc.exe /v:%sServer% & cmdkey /delete:TERMSRV/%sServer%"

josefZ评论效果很好。以下命令可以放在keepass的"URL:"字段中。当您双击该 url 或执行任何其他启动该 url 的操作时,它将自动启动 RPD 并登录。

cmd://cmd /C "for /F "tokens=*" %G in ("127.0.0.1") do cmdkey /generic:TERMSRV/%G /user:{USERNAME} /pass:{PASSWORD} & mstsc.exe /v:%G & cmdkey /delete:TERMSRV/%G"

我已经通过RDP到Windows盒子和Linux盒子中对此进行了测试。

最新更新