0
フルパスのない抽出されたファイルのリストが表示されます。彼らは別々の行にあるtxtファイルに入っています。これらのファイルは、異なるフォルダまたはサブフォルダにあります。私はリストからファイルを削除し、30分以上経過している場合にのみリストからファイル名を削除したいと思います。例list.txtにPS - テキストファイルからファイル名のエントリを削除するには
:
file1.doc
file2.doc
file3.doc
はのはfile3.docが30分未満の古いとしましょう。私の現在のコードでは、file1.docとfile2.docを削除し、file3.docには触れないようにすることができます。ファイルを削除すると、私のコードでlist.txtからfile1.docとfile2.docを削除したいと思います。
$Now = Get-Date
$Minutes = "30"
$TargetFolder = "C:\Test"
$LastWrite = $Now.AddMinutes(-$Minutes)
$Files = Get-Content C:\list.txt |% {get-childitem $TargetFolder -include $_ -recurse} | Where {$_.LastWriteTime -le "$LastWrite"}
foreach ($File in $Files)
{
if ($File -ne $NULL)
{
Remove-Item $File.FullName -WhatIf | out-null
}
}
私は初心者です。元のリストC:\ list.txtからファイル名を削除するにはどうすればよいですか?
ありがとうございます。
ようこそStackOverflow。ここでは[質問]のガイドです。一般的に、質問には、あなたが試したことのある箇所や、どこに行き詰まっているのかに関するコードが含まれている必要があります。 PowerShellを使用する場合は、 'Get-ChildItem'、' Get-Content'、 'Remove-Item'、' Get-Date'コマンドレットを使用します。 'Get-Help xxx -Examples'でこれらを使用する方法の詳細を得ることができます。ここで' xxx'はあなたが助けたいコマンドです。 – BenH
また、 'Get-Content'も); – t0mm13b
問題文をよく理解できません。入力例、意図した出力、これまでに得たものを教えてください。 –