qshinoの日記

Powershell関係と徒然なこと

日付、連番をファイル名に by powershell

日付をファイル名に

$now = Get-Date -Format "yyyy-MMdd-HHmmss"
Write-Output "poi" | Out-File "memo-$now.txt"

連番をファイル名に

日付を打つのが面倒なので、連番をファイル名にする。先のが2行に対して2行多い4行。

$index = "index.txt"
(Get-Date -Format "yyyy-MMdd-HHmmss") + [Environment]::NewLine >> $index
$file = "memo-{0:00}.txt" -f  (Get-Content $index).length
"poi" >  $file

Get-Contentが行単位の配列を返すので、.lengthが行数を示す事を利用。

懸念点

  1. 文字列をリディレクト可能? ダメなら、Write-Output
  2. ディレクト先のファイル名が変数でも大丈夫? ダメならOut-File

Out-Fileを使って

何とか3行。

$index = "index.txt"
Write-output "Hi" > $index
write-Output "poi" | Out-File  ( "memo-{0:00}.txt" -f  (Get-Content $index).length)

以上

参考

http://tipstour.net/command/9075