PowerShellで短めのタイムスタンプ文字列を作る

Qiitaに書いたけど、自分で使ってみて使い勝手が悪かった(ファイル名で並べると順序がばらばらになってしまう)のでボツにした記事。

手順

  1. Get-Date の Ticks をとる(整数値化する)
  2. これを 16 進数に変換する
  3. さらに、これの先頭 2 桁と末尾の 5 桁を削る
[Convert]::ToString((Get-Date).Ticks, 16).SubString(2, 8)

結果

426be317
元の時間を得るには
filter Get-DateFromShortenedHexTicksString { [Convert]::ToInt64("8d" + $_ + "00000", 16) | Get-Date }
"426be317" | Get-DateFromShortenedHexTicksString

結果

2016年12月17日 20:49:28