私が取り組んでいるスクリプトは、一時フォルダー (C ディスク内) を削除し、一時フォルダー内のすべてを削除してから、新しい一時フォルダーを作成することを目的としています。すべてを削除するスクリプトは既に作成されていますが、Powershell で新しい一時フォルダーを作成する方法がわかりません。Powershell で新しい一時フォルダーを作成する方法を誰かが知っているかどうか疑問に思っていました。
#remove all temporary files
if($serverVersion.name -like "*2003*"){
$dir = "\\$server" + '\C$\temp'
}
elseif($serverVersion.name -like "*2008*"){
$dir = "\\$server" + '\C$\Windows\Temp'
}
$tempArray = @()
foreach ($item in get-childitem -path $dir){
if ($item.name -like "*.tmp"){
$tempArray = $tempArray + $item
}
}
for ($i = 0; $i -le $tempArray.length; $i++){
$removal = $dir + "\" + $tempArray[$i]
remove-item $removal -force -recurse
}
一時フォルダーも正しく削除していますか?また、新しい一時フォルダーを作成するにはどうすればよいですか?
編集:人々が提案したことに基づいてコードを更新しました。これが望ましい効果をもたらすかどうか、さらにこれを削減する方法があるかどうか疑問に思っていました:
if($serverVersion.name -like "*2003*"){
$dir = "\\$server" + '\C$\temp'
remove-item $dir -force -recurse
new-item -path "\\$server" + '\C$\Windows\temp' -Type Directory
}
elseif($serverVersion.name -like "*2008*"){
$dir = "\\$server" + '\C$\Windows\Temp'
remove-item $dir -force -recurse
New-Item -Path "\\$server" + '\C$\Windows\Temp' -Type Directory
}