Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PowerShell脚本以查找最新文件并检查其大小_Powershell_Filesystems - Fatal编程技术网

PowerShell脚本以查找最新文件并检查其大小

PowerShell脚本以查找最新文件并检查其大小,powershell,filesystems,Powershell,Filesystems,我有一个简单的PowerShell脚本来查找目录中的最新文件,但我无法检查文件大小是否大于0 MB。我已经在下面发布了我的脚本: $olddate = [DateTime]::MaxValue $newdate = [DateTime]::MinValue $oldfn = "" $newfn = "" $path = "U:\PGCLUSTER_BACKUP" get-childitem $path | ForEach-Object { if ($_.LastWriteTime -lt

我有一个简单的PowerShell脚本来查找目录中的最新文件,但我无法检查文件大小是否大于0 MB。我已经在下面发布了我的脚本:

$olddate = [DateTime]::MaxValue
$newdate = [DateTime]::MinValue
$oldfn = ""
$newfn = ""
$path = "U:\PGCLUSTER_BACKUP"
get-childitem $path | ForEach-Object {
    if ($_.LastWriteTime -lt $olddate -and -not $_.PSIsContainer) {
        $oldfn = $_.Name
        $olddate = $_.LastWriteTime
    }
    if ($_.LastWriteTime -gt $newdate -and -not $_.PSIsContainer) {
        $newfn = $_.Name
        $newdate = $_.LastWriteTime
    }
}

$output = ""
if ($newfn -ne "") { $output += "`nNewest: " + $newdate + " -- " + $newfn }

if ($output -eq "") { $output += "`nFolder is empty." }
$output + "`n"

请给我一些建议,看看我能做些什么来解决这个问题。

您在这里使用PowerShell非常非常错误。实际上,它很痛(我想你和我;-))

更自然的方法是使用管道查找最新文件:

$latest = Get-ChildItem $path | Sort LastWriteTime -Descending | select -First 1
然后,这里仍然有一个
FileInfo
对象,它具有所有相关属性:

if ($latest -and $latest.Length -gt 0) {
  'Newest: {0:yyyy-MM-dd} -- {1}' -f $latest.LastWriteTime,$latest.Name
} else { 'Folder is empty' }

您在这里使用PowerShell非常非常错误。实际上,它很痛(我想你和我;-))

更自然的方法是使用管道查找最新文件:

$latest = Get-ChildItem $path | Sort LastWriteTime -Descending | select -First 1
然后,这里仍然有一个
FileInfo
对象,它具有所有相关属性:

if ($latest -and $latest.Length -gt 0) {
  'Newest: {0:yyyy-MM-dd} -- {1}' -f $latest.LastWriteTime,$latest.Name
} else { 'Folder is empty' }

您在这里使用PowerShell非常非常错误。实际上,它很痛(我想你和我;-))

更自然的方法是使用管道查找最新文件:

$latest = Get-ChildItem $path | Sort LastWriteTime -Descending | select -First 1
然后,这里仍然有一个
FileInfo
对象,它具有所有相关属性:

if ($latest -and $latest.Length -gt 0) {
  'Newest: {0:yyyy-MM-dd} -- {1}' -f $latest.LastWriteTime,$latest.Name
} else { 'Folder is empty' }

您在这里使用PowerShell非常非常错误。实际上,它很痛(我想你和我;-))

更自然的方法是使用管道查找最新文件:

$latest = Get-ChildItem $path | Sort LastWriteTime -Descending | select -First 1
然后,这里仍然有一个
FileInfo
对象,它具有所有相关属性:

if ($latest -and $latest.Length -gt 0) {
  'Newest: {0:yyyy-MM-dd} -- {1}' -f $latest.LastWriteTime,$latest.Name
} else { 'Folder is empty' }

我是这样做的:

$path = "F:\PGCLUSTER_BACKUP"

$latest = Get-ChildItem $path | Sort LastWriteTime -Descending | select -First 1
$mail='Newest file: {0:yyyy-MM-dd} -- {1}' -f $latest.LastWriteTime,$latest.Name

if ($latest -and $latest.Length -gt 0) {

Send-MailMessage -From "backup_openerp@zxc.com" -To "admins@zxc.com" -Subject "OpenERP database backup for PROD has been successful !" -Body "Success! Backup of the database OpenERP is not empty:   $mail" -SmtpServer "XXX.XXX.XXX.XXX"  
} else {

Send-MailMessage -From "backup_openerp@zxc.com" -To "admins@zxc.com" -Subject "OpenERP database backup for PROD has been failed !" -Body "Failed ! Backup of the database OpenERP is empty:    $mail" -SmtpServer "XXX.XXX.XXX.XXX"
}

我是这样做的:

$path = "F:\PGCLUSTER_BACKUP"

$latest = Get-ChildItem $path | Sort LastWriteTime -Descending | select -First 1
$mail='Newest file: {0:yyyy-MM-dd} -- {1}' -f $latest.LastWriteTime,$latest.Name

if ($latest -and $latest.Length -gt 0) {

Send-MailMessage -From "backup_openerp@zxc.com" -To "admins@zxc.com" -Subject "OpenERP database backup for PROD has been successful !" -Body "Success! Backup of the database OpenERP is not empty:   $mail" -SmtpServer "XXX.XXX.XXX.XXX"  
} else {

Send-MailMessage -From "backup_openerp@zxc.com" -To "admins@zxc.com" -Subject "OpenERP database backup for PROD has been failed !" -Body "Failed ! Backup of the database OpenERP is empty:    $mail" -SmtpServer "XXX.XXX.XXX.XXX"
}

我是这样做的:

$path = "F:\PGCLUSTER_BACKUP"

$latest = Get-ChildItem $path | Sort LastWriteTime -Descending | select -First 1
$mail='Newest file: {0:yyyy-MM-dd} -- {1}' -f $latest.LastWriteTime,$latest.Name

if ($latest -and $latest.Length -gt 0) {

Send-MailMessage -From "backup_openerp@zxc.com" -To "admins@zxc.com" -Subject "OpenERP database backup for PROD has been successful !" -Body "Success! Backup of the database OpenERP is not empty:   $mail" -SmtpServer "XXX.XXX.XXX.XXX"  
} else {

Send-MailMessage -From "backup_openerp@zxc.com" -To "admins@zxc.com" -Subject "OpenERP database backup for PROD has been failed !" -Body "Failed ! Backup of the database OpenERP is empty:    $mail" -SmtpServer "XXX.XXX.XXX.XXX"
}

我是这样做的:

$path = "F:\PGCLUSTER_BACKUP"

$latest = Get-ChildItem $path | Sort LastWriteTime -Descending | select -First 1
$mail='Newest file: {0:yyyy-MM-dd} -- {1}' -f $latest.LastWriteTime,$latest.Name

if ($latest -and $latest.Length -gt 0) {

Send-MailMessage -From "backup_openerp@zxc.com" -To "admins@zxc.com" -Subject "OpenERP database backup for PROD has been successful !" -Body "Success! Backup of the database OpenERP is not empty:   $mail" -SmtpServer "XXX.XXX.XXX.XXX"  
} else {

Send-MailMessage -From "backup_openerp@zxc.com" -To "admins@zxc.com" -Subject "OpenERP database backup for PROD has been failed !" -Body "Failed ! Backup of the database OpenERP is empty:    $mail" -SmtpServer "XXX.XXX.XXX.XXX"
}