簡體   English   中英

如何將EC2 Windows計算機的instance-id放入批處理變量中

[英]How to get an EC2 Windows machine's instance-id into a batch variable

我有一個要在EC2 Windows AMI啟動時運行的批處理文件。 我想從該批處理文件運行的程序將EC2計算機的instance-id作為參數。 使該實例ID作為參數傳遞給該程序的最簡單方法是什么?

關於該主題的Amazon文檔中 ,我看到您應該向指定的URL發出WGET並解析響應。 因此,解決此問題的另一種方式可能是“如何將Windows請求中HTTP請求的內容作為參數傳遞給程序”

用偽代碼,這是我想做的:

set ID = GET http://169.254.169.254/2008-08-08/meta-data/instance-id
myprogram.exe /instanceID=%ID%

關於如何進行的任何建議?

您不能直接在批處理文件中打開URL。 您當然可以使用wget或類似方法檢索該URL的內容。 然后,您將獲得一個文件(可以將其內容分配給一個環境變量[例如,請參見Set = log.txt,在批處理中 ]),或者從程序中獲取輸出,在這種情況下,可以將其包裝到

for /f "usebackq delims=" %%x in (`print_contents_of_url http://169.254.169.254/2008-08-08/meta-data/instance-id`) do set ID=%%x

這會將%ID%設置為該URL上的服務器響應[假設程序執行了我命名的操作])。

不過,在兩種情況下,您都需要一個單獨的程序來說HTTP。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM