以下是将pcap转换为csv文件的代码。 Pcap文件位于/ root / Desktop / pcaps的子文件夹中,我想使用与pcap文件相同的子文件夹名称和文件名将csv文件写入文件夹/ root / Desktop / csvs。 例如,如果.pcap文件位于子文件夹Sub1,Sub2中。 (/ root / Desktop / pcaps / Sub1和/ root / Desktop / pcap / Sub2)。 Sub1具有a1.pcap和a2.pcap。 Sub2具有b1.pcap和b2.pcap。我需要将输出的csv文件写入与上述子文件夹Sub1,Sub2(/ root / Desktop / csvs / Sub1和/ root / Desktop / csvs / Sub2)同名的文件夹中。那么Sub1应该具有a1.csv,a2.csv。 Sub2应该具有b1.csv,b2.csv。
我该怎么做?低于错误。 outputdir = startdir /“ Outcsv” TypeError:/不支持的操作数类型:'str'和'str'
import os
startdir= '/root/Desktop/pcaps'
suffix= '.pcap'
outputdir = startdir / "csvs"
for root,dirs, files, in os.walk(startdir):
for name in files:
if name.endswith(suffix):
filename=os.path.join(root,name)
output_filename = outputdir / filename.relative_to(startdir)
cmd = 'tshark -r {} -T fields -e frame.number -e frame.time_relative -e wlan.sa -e wlan.da -e wlan.ta -e wlan.ra -e frame.time_delta_displayed -e frame.len -E header=y -E separator=, -E quote=d -E occurrence=f > {}.csv'
final_cmd = cmd.format(filename,output_filename)
os.system(final_cmd)