Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.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 我可以让robocopy日志文件只显示一行摘要和日期吗?而不是有多个列?非常感谢。_Powershell_File_Logging_Robocopy_Short - Fatal编程技术网

Powershell 我可以让robocopy日志文件只显示一行摘要和日期吗?而不是有多个列?非常感谢。

Powershell 我可以让robocopy日志文件只显示一行摘要和日期吗?而不是有多个列?非常感谢。,powershell,file,logging,robocopy,short,Powershell,File,Logging,Robocopy,Short,到目前为止,我有这段代码只是为了显示robocopy的摘要。我能不能把它改短一行?比如一行,显示复制的总大小、日期,以及复制是否成功等等。谢谢 /Z/e/xx/W:5/NFL/NDL/NJH/nc/np/unilog+:$Logfile 这是输出: Total Copied Skipped Mismatch FAILED Extras Dirs : 1 0 0 0

到目前为止,我有这段代码只是为了显示robocopy的摘要。我能不能把它改短一行?比如一行,显示复制的总大小、日期,以及复制是否成功等等。谢谢

/Z/e/xx/W:5/NFL/NDL/NJH/nc/np/unilog+:$Logfile

这是输出:


               Total    Copied   Skipped  Mismatch    FAILED    Extras
    Dirs :         1         0         0         0         0         0
   Files :        10         1         9         0         0         0
   Bytes :   1.009 g  102.79 m  931.15 m         0         0         0
   Times :   0:00:06   0:00:06                       0:00:00   0:00:00


   Speed :            15897359 Bytes/sec.
   Speed :             909.654 MegaBytes/min.
   Ended : Thursday, April 29, 2021 11:24:08 AM

使用一点选择字符串、修剪和拆分

Clear-Host
#Next line for testing only you can delete since you already have it defined!
$LogFile =  "G:\BEKDocs\Batch\BackupTasks\RoboCopyNAS.log"

$Log = Get-Content -Path "$LogFile"

$Bytes = $($Log | Select-String -Pattern "Bytes :" -SimpleMatch).Line.Trim(" ")
$DT    = $($Log | Select-String -Pattern "Ended :" -SimpleMatch).Line.Trim(" ")

$Parts = $Bytes.Split(" ")

$Bytes = $Parts[3] + $Parts[4]

"Bytes Copied: $Bytes on $($DT.Trim('Ended :'))"
结果:

Bytes Copied: 27.493g on Thursday, April 29, 2021 6:15:20 PM

HTH

嗨,我希望它能将结果从robocopy上传到一个文本文件中,这样当我收到电子邮件时,它就会显示你输入的结果。有没有办法做到这一点?我想你必须使用addcontent,而且单行的字节部分没有通过。“字节复制:2021年4月30日星期五上午9:44:38”我不知道如何将该行输入RoboForm电子邮件,因为它将在控件返回PowerShell处理日志文件之前被处理。当然,在处理完日志文件后,您可以杀死RoboForm电子邮件并从PowerShell发送一封。我如何从PowerShell发送一封?对不起,我是新来的。我真的很感谢你的帮助。