簡體   English   中英

如何獲取Azure存儲表時間戳作為字符串?

[英]How get azure storage table timestamp as string?

我可以使用以下PowerShell命令獲取存儲表行:

$temp_table_name = "MY_TABLE_NAME"
$saContext = (Get-AzureRmStorageAccount -ResourceGroupName $resourceGroup -Name $storageAccount).Context
$temp_table = Get-AzureStorageTable -Name $temp_table_name -Context $saContext
$result = Get-AzureStorageTableRowAll -table $temp_table

我的表中有兩個時間戳,一個用於名稱為Timestamp天藍色表本身,另一個用於名稱為TIMESTAMP度量標准(自動存儲)。 那么$result[0]就像下面這樣:

Average      : 3228132966.4
Count        : 240
CounterName  : \Memory\AvailableMemory
DeploymentId : 2c90752b-100f-4640-a056-e2b894bf5bd5
Host         : cpuusagetest
Last         : 3230662656
Maximum      : 3231711232
Minimum      : 3225419776
TIMESTAMP    : 10/16/2017 10:00:00 PM
Total        : 774751911936
PartitionKey : *************
RowKey       : ***************__:005CMemory:005CAvailableMemory
Etag         : W/"datetime'2017-10-16T23%3A00%3A05.5000867Z'"

我不知道為什么只有TIMESTAMP而另一個是Etag 結果。 無論如何,我可以使用以下命令獲取時間戳:

$result[0].Timestamp

它將始終返回類似10/16/2017 23:00:00的字符串,但在表的行中存儲的內容類似於2017-10-16T23:30:00.000 我需要獲取存儲在存儲表中的確切格式。
我嘗試使用以下命令更改格式:

[String]$result[0].Timestamp
or
$result[$j].Timestamp.toString("s")

但結果是一樣的。
請注意,當我使用$result[$j].Timestamp.GetType().FullName結果為System.DateTime ,表中的Timestamp屬性類型DateTime ,我不能(也不想)更改。
這是我的Azure存儲資源管理器的屏幕快照,顯示我的時間戳記有分鍾,秒和毫秒 上面是我的Azure存儲資源管理器的屏幕截圖,顯示我的時間戳記有分鍾,秒和毫秒

但是當我使用此命令時:

$result[$j].Timestamp.toString("s")

結果是沒有分鍾和分鍾...
我什至也測試了這些命令:

"{0:MM/dd/yyyy hh:mm:ss}" -f $result[$j].Timestamp

但結果類似於10/16/2017 10:00:00
你能指導我嗎?

提供任何類型為DateTime d的對象,命令d.ToString(“ s”)將以2017-10-16T23:30:00.000的格式返回日期對象

如果您有字符串並且需要將其轉換為DateTime,則以下命令將在不同格式的日期字符串之間執行轉換:

[DateTime]::Parse("10/16/2017 23:00:00").ToString("s")

通過以上評估得出“ 2017-10-16T23:30:00.000”

暫無
暫無

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

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