2016-09-07 36 views
0

我想打印例如派克在CMD。這適用於packer --version。不幸的是,這隻會打印版本號 - 而不是工具的名稱。一些其他工具(例如VirtualBox等)也是如此。如何在一行中在cmd中打印工具的名稱和版本?

C:\_TEMP λ packer --version 0.10.1 λ vboxmanage --version 5.1.4r110228

所以我的想法是做somethink像echo Packer & packer --version但在打印兩行:

C:\_TEMP λ echo Packer & packer --version Packer 0.10.1

現在,我怎麼能打印名稱+版本號在同一行?這樣的結果是這樣的:

Packer 0.10.1 Virtualbox 5.1.4r110228

回答

0

指定版本的結果的環境變量

for /f %a in ('packer --version') do set VERSION=%a 

然後附和你喜歡什麼

echo packer %VERSION% 

說明:

  • 你正在循環輸出packer --version(只有1行,儘管如此VERSION只設置一個)
  • 如果你只需要一行令牌,那麼你可以指定例如「tokens = 2」作爲第二個空格分隔令牌。

NOTE:這些命令在命令行中工作。要在批處理文件中使用,請將%a轉換爲%% a。

+0

媽的,這對這樣一個小東西,以實現:)))這麼多的工作,但我想沒有更簡單的方法(?)。謝謝你的補充說明和注意,這非常好 - 我相信我會碰到它。 –

0

你也可以(AB)使用set /p爲(參見例如here):

<nul set /p "=Packer: " 
packer --version 
<nul set /p "=VirtualBox: " 
vboxmanage --version