我可以寻求您的帮助和专业知识来为以下内容创建批处理文件吗?
文件夹中有以下文件\\abcdef123\test\root\child\source
AC_FDM_TREE_EXTRACT_20161216203034.touch
AC_FDM_TREE_EXTRACT_20170118204420.touch
AC_FDM_TREE_EXTRACT_20170214204730.touch
PS_Z_VT_SUPER_TREE_20161216203034.txt
PS_Z_VT_SUPER_TREE_20170118204420.txt
PS_Z_VT_SUPER_TREE_20170214204730.txt
我想动态删除除当前月份之外的所有文件。即,如果 YYYYMM 是当前月份,则删除所有不等于的文件(不包括子文件夹)年月.*
生成未来日期的文件的可能性不大。但如果想快速取胜,删除当前月份之前的所有文件可能更好。
答案1
我想动态删除除当前月份之外的所有文件。即,如果 YYYYMM 是当前月份,则删除所有不等于 YYYYMM 的文件(不包括子文件夹)。*
下面是执行此操作的 PowerShell 脚本:
Push-Location "\\abcdef123\test\root\child\source"
$USculture=New-Object -TypeName CultureInfo -ArgumentList "en-US"
$targetDateString=(Get-Date).ToString("yyyyMM", $USculture)
Remove-Item * -Exclude ("*"+$targetDateString+"*")
Pop-Location
第一行将文件夹更改为“\abcdef123\test\root\child\source”
第二行和第三行(第二段)以“yyyyMM”格式获取当前公历的年份和月份,其中“yyyy”为四位数字年份,“MM”为两位数字月份。
第四行(最后一段)删除当前文件夹中除与“年“ 图案。
最后一行将您返回到开始处的文件夹。