为tcpdump编写linux脚本以停止并再次运行,但将信息保存在另一个文件中

为tcpdump编写linux脚本以停止并再次运行,但将信息保存在另一个文件中,linux,scripting,Linux,Scripting,我对编写脚本很陌生,不确定我是否正确地编写了tcpdump收集pcap信息的脚本 tcpdump -s 0 port ftp or ssh or http or https -i eth0 -w mycap.pcap #run the tcpdump and store all the info in mycap.pcap sudo kill -2 #for exit purpose 这使我能够通过相同的脚本自动运行tcpdump,这是很好的,但是,我希望通过相同的脚本停止此操作(因为my

我对编写脚本很陌生,不确定我是否正确地编写了tcpdump收集pcap信息的脚本

tcpdump -s 0 port ftp or ssh or http or https -i eth0 -w mycap.pcap 
#run the tcpdump and store all the info in mycap.pcap

sudo kill -2 #for exit purpose
这使我能够通过相同的脚本自动运行tcpdump,这是很好的,但是,我希望通过相同的脚本停止此操作(因为mycap.pcap的空间满足每个文件3GB的最大容量),然后再次运行,但这一次,我将把它存储在另一个文件中(例如mycap1.pcap)

然后循环再次进行,直到我按下crtl+c停止该过程


这可以做到吗?

您不需要为此编写脚本

tcpdump  -C <filesize> -s 0 port ftp or ssh or http or https -i eth0 -w mycap.pcap
tcpdump-C-s0端口ftp或ssh或http或https-i eth0-w mycap.pcap

请查看tcpdump的手册页。

对我来说,脚本的目的不太清楚-您所说的“由于mycap.pcap的空间已满”是什么意思?如果它填满了文件系统,用不同的文件名重新启动进程对你没有多大好处…对不起,我的不好,因为我一直将它链接到我的项目。每个文件的最大容量为3GB。因此,在达到最大容量后,它将停止并创建另一个文件,然后再次运行tcpdump。是的,感谢您提供的解决方案!我已经试过了,而且成功了!我还进一步发现了一些可以设置持续时间的选项