簡體   English   中英

如何使用Powershell在寫入主機中指定變量類型

[英]how to specify a variable type in write-host using powershell

如果我有一個名為$ number的變量,並且具有以下Cmdlet:

Write-host "The final number is $number"

是否有一種方法可以在寫入主機Cmdlet中將其設置為整數。

我不確定您要完成什么。

如果我們這樣做:

$numberAsString = '1'
$number.GetType()

那么GetType()的輸出將是字符串類型。 如果相反,我們這樣做:

$numberAsInteger = 1
$number.GetType()

那么GetType()的輸出將是整數類型。

您還可以執行以下操作(當分配是顯式的時,此示例並沒有多大意義,但是正如注釋中所指出的,如果您接受用戶提供的值,這可能會很有用):

[int]$number = '1'

現在,即使您將值分配為字符串,它也將是整數。 但是,這似乎與write-host的輸出無關。 例如,您可以執行以下操作:

$number = '2'
Write-Host ('The final number is ' + ([int]$number))

這將起作用,但是輸出將是相同的,並且在這種情況下$ number仍然是字符串類型。

非常不清楚您要問的是什么,但是從字面上回答您的問題,是的,您可以:

Write-host "The final number is $([int]$number = 42)"
# OUTPUT:
# The final number is 42

如果您的意思是“轉換為int”,那么可以,這也是可能的:

$number = 12.34
Write-host "The final number is $([int]$number)"
# OUTPUT:
# The final number is 12

要在字符串中插入整數,可以使用:

write-host 'The final number is {0}' -f ([int]$Number)

要么

write-host "The final number is $([int]$Number)"

在這兩種情況下, $Number在形成字符串之前都會轉換為[int] 但是,當字符串形成時, [int]$Number ist .toString()

暫無
暫無

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

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