2012-04-19 21 views
2

私はdosコマンド "w32tm"を使用して、Active Directory LastLogonTimestampを読み取り可能な日付形式に変換しています。しかし、それは私にこのような何かを与える:150215 02:40:10.0843593 - 11/04/2012 12:40:10 PMLastLogonTimestampからの日付の抽出

私は文字列から日付を抽出する方法は?だから私はそれの中にちょうど "11/04/2012"と変数を持つことができます。

ありがとうございました。

答えて

1

次のコードを試すことができます。これは最もクリーンではありませんが動作します!

[DateTime]::Parse($string.Split('-')[1]).ToString("MM/dd/yyyy") 

これは-後の断片にあなたの入力文字列150215 02:40:10.0843593 - 11/04/2012 12:40:10 PMを分割し、.NETのDateTime.Parse()関数に渡し、その後、最終的にはそれの日付部分を出力します。

+0

が御馳走を作品です。どうもありがとう。 – Bobby

3

はここで別のオプション(System.DirectoryServices.SearchResultオブジェクトに対して動作します)

# gets the current logged on user lastlogontimestamp 
$user = ([ADSISEARCHER]"(samaccountname=$env:USERNAME)").FindOne() 
[DateTime]::FromFileTime([Int64]::Parse($user.Properties.lastlogontimestamp)) 
関連する問題