Windows 批量卷曲到变量
Windows batch curl to variable
我对 Windows 中的批处理脚本的了解很差,我需要一些帮助。
我正在尝试创建一个动态脚本以从不同的 EC2 实例启动 selenium 服务器。
我想做的是在启动服务器时自动运行以下脚本:
cd C:\curl-7.47.1-win64-mingw\bin
%comspec% /c curl http://ipecho.net/plain > %HOMEPATH%\desktop\MyIP.txt
set /P IP= < %HOMEPATH%\desktop\MyIP.txt
cd C:\Selenium\
java -jar selenium-server-standalone-2.52.0.jar -role node -host %IP% -hub http://*******************/grid/register --nodeTimeout
1200 maxSession 4 -browser browserName=chrome,maxInstances=4,platform=WINDOWS, -Dwebdriver.chrome.driver=chromedriver.exe -
browser browserName=firefox,maxInstances=4,platform=WINDOWS
当我通过 RDP 登录服务器时它有效。但是当它由 EC2 自动启动时,%IP% 变量为空。我不知道发生了什么。也许我需要登录?
现在我正在尝试另一个选项,我决定不使用 "MyIP.txt" 文件并直接将 curl 传递给变量并在 selenium 命令中使用它。但是我不知道具体怎么做...
像...
cd C:\curl-7.47.1-win64-mingw\bin
SET IP=curl http://ipecho.net/plain
cd C:\Selenium\
java -jar selenium-server-standalone-2.52.0.jar -role node -host %IP% -hub http://********************/grid/register --nodeTimeout
1200 maxSession 4 -browser browserName=chrome,maxInstances=4,platform=WINDOWS, -Dwebdriver.chrome.driver=chromedriver.exe -
browser browserName=firefox,maxInstances=4,platform=WINDOWS
这个不行。
你能帮帮我吗?
谢谢。
如果直接在控制台中使用,试试这个:
for /F %I in ('curl http://ipecho.net/plain') do set ip=%I
echo %ip%
或者您可以在编写批处理脚本 (.bat) 时试试这个:
for /F %%I in ('curl http://ipecho.net/plain') do set ip=%%I
echo %ip%
我对 Windows 中的批处理脚本的了解很差,我需要一些帮助。
我正在尝试创建一个动态脚本以从不同的 EC2 实例启动 selenium 服务器。
我想做的是在启动服务器时自动运行以下脚本:
cd C:\curl-7.47.1-win64-mingw\bin
%comspec% /c curl http://ipecho.net/plain > %HOMEPATH%\desktop\MyIP.txt
set /P IP= < %HOMEPATH%\desktop\MyIP.txt
cd C:\Selenium\
java -jar selenium-server-standalone-2.52.0.jar -role node -host %IP% -hub http://*******************/grid/register --nodeTimeout
1200 maxSession 4 -browser browserName=chrome,maxInstances=4,platform=WINDOWS, -Dwebdriver.chrome.driver=chromedriver.exe -
browser browserName=firefox,maxInstances=4,platform=WINDOWS
当我通过 RDP 登录服务器时它有效。但是当它由 EC2 自动启动时,%IP% 变量为空。我不知道发生了什么。也许我需要登录?
现在我正在尝试另一个选项,我决定不使用 "MyIP.txt" 文件并直接将 curl 传递给变量并在 selenium 命令中使用它。但是我不知道具体怎么做...
像...
cd C:\curl-7.47.1-win64-mingw\bin
SET IP=curl http://ipecho.net/plain
cd C:\Selenium\
java -jar selenium-server-standalone-2.52.0.jar -role node -host %IP% -hub http://********************/grid/register --nodeTimeout
1200 maxSession 4 -browser browserName=chrome,maxInstances=4,platform=WINDOWS, -Dwebdriver.chrome.driver=chromedriver.exe -
browser browserName=firefox,maxInstances=4,platform=WINDOWS
这个不行。
你能帮帮我吗? 谢谢。
如果直接在控制台中使用,试试这个:
for /F %I in ('curl http://ipecho.net/plain') do set ip=%I
echo %ip%
或者您可以在编写批处理脚本 (.bat) 时试试这个:
for /F %%I in ('curl http://ipecho.net/plain') do set ip=%%I
echo %ip%