Get filename*.log.*也会获取filename*.log。如何才能只获得以点扩展名filename*.log.*结尾的日志文件,以便删除它们?我想使用删除项,但决定使用get- check检查。
这是文件。
Server1234.log
Server1234.log.1
Server1234.log.2
Server1234.log.3
Server1234.log.4Get filename*.log.*显示了上述所有内容。我不希望Server1234.log在输出中。
发布于 2020-05-13 08:44:28
您可以使用过滤器
Get-ChildItem filename*.log.?*问号上写着至少有一个角色.
发布于 2020-05-13 08:53:04
你的过滤器应该能用。我创建了3个文件:
New-Item 'Server1234.log' -ItemType File
New-Item 'Server1234.log.1' -ItemType File
New-Item 'Server1234.log.2' -ItemType File这是输出 of Get-ChildItem Server1234*.log.*
PS D:\> Get-ChildItem Server1234*.log.*
Directory: D:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 13/05/2020 10:51 0 Server1234.log.1
-a---- 13/05/2020 10:51 0 Server1234.log.2 注意:,Get-ChildItem cmdlet的过滤器参数不使用regex!如果要使用regex,可以在Where-Object cmdlet中这样做:
Get-ChildItem | Where-Object { $_.Name -match 'Server123.*log\.+' }https://stackoverflow.com/questions/61769959
复制相似问题