我有一個變數,我在其中轉儲某些事件的日期、月份和年份。
$我的變數->
17/10/2022
我需要更改日期和月份的順序。
$新變數->
10/17/2022
有人知道該怎么做嗎?有任何想法嗎?
我開始使用 powershell,但我想不出辦法。歡迎任何幫助或建議。
謝謝你的時間
uj5u.com熱心網友回復:
在 Powershell 中
$NewVariable = '{0:MM/dd/yyyy}' -f [datetime]::ParseExact($MyVariable, 'dd/MM/yyyy',$null)
如果您當前的區域設定在輸出格式中指定連字符而不是斜杠(例如在我的機器上具有荷蘭語設定),您可能需要更改'{0:MM/dd/yyyy}'為'{0:MM\/dd\/yyyy}'. 通過在斜杠前加上反斜杠,您將有效地對它們進行轉義,因此輸出始終如10/17/2022.
uj5u.com熱心網友回復:
要添加到Theo 的有用答案:
基于文本操作的解決方案,使用-splitand-join運算子,結合陣列索引:
$MyVariable = '17/10/2022'
# -> '10/17/2022'
$NewVariable =
($MyVariable -split '/')[1, 0, 2] -join '/'
基于[datetime]物件的解決方案,如 Theo 的回答:
$MyVariable = '17/10/2022'
# -> '10/17/2022'
$NewVariable =
[datetime]::Parse($MyVariable, [cultureinfo] 'en-GB').ToString('MM"/"dd"/"yyyy')
如果需要,使用[datetime]物件可以為您提供更大的靈活性:
該解決方案利用了在(英國-英語)文化中使用的事實
17/10/2022,即帶/分隔符的第一天日期格式en-GB,因此可以在該文化的背景關系中按原樣決議。然后使用該方法根據需要對生成的[datetime]實體進行格式化。.ToString()如果您當前的文化是美英文化,您可以簡化為
.ToString('d'),因為10/17/2022是該文化的短日期格式 (d)。
uj5u.com熱心網友回復:
這是一個bash答案:
Myvariable='17/10/2022'
Newvariable=$( awk -F/ '{ printf("%s/%s/%s",$2,$1,$3) }' <<< "$Myvariable" )
echo $Newvariable
結果:
10/17/2022
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/524694.html
標籤:重击电源外壳壳
