使用Powershell日期對象如何獲取一週中的日期編號,0到6,其中0代表星期日,6代表星期六。我知道我可以使用下面的代碼獲取日期名稱,但是如何獲取該號碼,因爲沒有DayNumberOfWeek或同等屬性?使用Powershell如何獲得週日數?
(Get-Date).DayOfWeek
我想我可以從代碼在switch語句使用日期名以上將它轉換成一個數字,但似乎並不很雄辯。
使用Powershell日期對象如何獲取一週中的日期編號,0到6,其中0代表星期日,6代表星期六。我知道我可以使用下面的代碼獲取日期名稱,但是如何獲取該號碼,因爲沒有DayNumberOfWeek或同等屬性?使用Powershell如何獲得週日數?
(Get-Date).DayOfWeek
我想我可以從代碼在switch語句使用日期名以上將它轉換成一個數字,但似乎並不很雄辯。
這樣的:
(get-date).DayOfWeek.value__
我建議未來的調查什麼性質這樣的對象:
(get-date).DayOfWeek | gm -f # gm is an alias for get-member
是的,我剛剛發現它 - 只需要向下鑽取另一層。無論如何,歡呼聲。 – 2013-02-27 12:12:05
只是在等待時限到期。 – 2013-02-27 13:05:22
好了,日期時間的DAYOFWEEK屬性不是一個字符串,而是一個DAYOFWEEK枚舉,所以最短的答案很可能是
[Int] (Get-Date).DayOfWeek # returns 0 through 6 for current day of week
或者
[Int] [DayOfWeek] "Wednesday" # returns 3
比爾
*'powershell [Int](Get-Date).DayOfWeek' *確實有效(對於「Monday」,返回「1」)。但是,我試着*'powershell [Int] [DayOfWeek]「Wednesday」'*,就像你寫的那樣,但是powershell顯示錯誤:**「表達式或語句中的」星期三「意外的標記。 – 2016-09-05 13:08:35
從PowerShell提示符運行,而不是從cmd.exe提示符運行(即,不要在'powershell'前面加上命令前綴)。 (爲什麼你認爲你需要這樣做?我的例子沒有。) – 2016-09-05 15:17:08
Get-Date -UFormat %u
將返回格式化的日期。
查詢http://technet.microsoft.com/en-us/library/hh849887.aspx for more fomats
Just FYI; 0在某些國家是星期一,在其他國家是星期天。這取決於計算機的文化(區域設置)。 – 2013-02-27 13:10:35