问题描述
当我在脚本中运行以下命令时,我希望在停止脚本后生成 packet_dump.pcap 但没有生成任何内容。
Start-Job -Name $tsharkJobName -ScriptBlock { & $tsharkPath --interface $interfaceNo -w "packet_dump.pcap" } | Out-Null
当我运行以下行时:
Receive-Job $tsharkJobName -Force
这是我收到的错误消息(其中 $interfaceNo 是 5,这是 Wi-Fi 的 ID):
Capturing on 'Wi-Fi'
+ CategoryInfo : NotSpecified: (Capturing on 'Wi-Fi':String) [],remoteexception
+ FullyQualifiedErrorId : NativeCommandError
+ PSComputerName : localhost
我在脚本末尾也有这个:
finally {
Stop-Job $tsharkJobName
Remove-Job $tsharkJobName -Force
}
解决方法
$args = "--interface " + $interfaceNo + " -w packet_dump.pcap"
Start-Process $tsharkPath -ArgumentList $args -NoNewWindow
和
finally {
Stop-Process -Name "tshark"
}
解决这个问题。