.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{ . if \nF \{ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "MERGECAP 1" .TH MERGECAP 1 "2014-09-16" "1.12.1" "The\ Wireshark\ Network\ Analyzer" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" mergecap \- Merges two or more capture files into one .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\fBmergecap\fR [\ \fB\-a\fR\ ] [\ \fB\-F\fR\ <\fIfile\ format\fR>\ ] [\ \fB\-h\fR\ ] [\ \fB\-s\fR\ <\fIsnaplen\fR>\ ] [\ \fB\-T\fR\ <\fIencapsulation\ type\fR>\ ] [\ \fB\-v\fR\ ] \&\fB\-w\fR\ <\fIoutfile\fR>|\- <\fIinfile\fR> [<\fIinfile\fR> \fI...\fR] .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fBMergecap\fR is a program that combines multiple saved capture files into a single output file specified by the \fB\-w\fR argument. \fBMergecap\fR knows how to read \fBpcap\fR capture files, including those of \fBtcpdump\fR, \&\fBWireshark\fR, and other tools that write captures in that format. .PP By default, \fBMergecap\fR writes the capture file in \fBpcap\fR format, and writes all of the packets from the input capture files to the output file. .PP \&\fBMergecap\fR is able to detect, read and write the same capture files that are supported by \fBWireshark\fR. The input files don't need a specific filename extension; the file format and an optional gzip compression will be automatically detected. Near the beginning of the \s-1DESCRIPTION\s0 section of \fIwireshark\fR\|(1) or is a detailed description of the way \fBWireshark\fR handles this, which is the same way \fBMergecap\fR handles this. .PP \&\fBMergecap\fR can write the file in several output formats. The \fB\-F\fR flag can be used to specify the format in which to write the capture file, \fBmergecap \-F\fR provides a list of the available output formats. .PP Packets from the input files are merged in chronological order based on each frame's timestamp, unless the \fB\-a\fR flag is specified. \fBMergecap\fR assumes that frames within a single capture file are already stored in chronological order. When the \fB\-a\fR flag is specified, packets are copied directly from each input file to the output file, independent of each frame's timestamp. .PP The output file frame encapsulation type is set to the type of the input files if all input files have the same type. If not all of the input files have the same frame encapsulation type, the output file type is set to \s-1WTAP_ENCAP_PER_PACKET. \s0 Note that some capture file formats, most notably \fBpcap\fR, do not currently support \s-1WTAP_ENCAP_PER_PACKET.\s0 This combination will cause the output file creation to fail. .SH "OPTIONS" .IX Header "OPTIONS" .IP "\-a" 4 .IX Item "-a" Causes the frame timestamps to be ignored, writing all packets from the first input file followed by all packets from the second input file. By default, when \fB\-a\fR is not specified, the contents of the input files are merged in chronological order based on each frame's timestamp. .Sp Note: when merging, \fBmergecap\fR assumes that packets within a capture file are already in chronological order. .IP "\-F " 4 .IX Item "-F " Sets the file format of the output capture file. \fBMergecap\fR can write the file in several formats; \fBmergecap \-F\fR provides a list of the available output formats. The default is to use the file format of the first input file. .IP "\-h" 4 .IX Item "-h" Prints the version and options and exits. .IP "\-s " 4 .IX Item "-s " Sets the snapshot length to use when writing the data. If the \fB\-s\fR flag is used to specify a snapshot length, frames in the input file with more captured data than the specified snapshot length will have only the amount of data specified by the snapshot length written to the output file. This may be useful if the program that is to read the output file cannot handle packets larger than a certain size (for example, the versions of snoop in Solaris 2.5.1 and Solaris 2.6 appear to reject Ethernet frames larger than the standard Ethernet \s-1MTU,\s0 making them incapable of handling gigabit Ethernet captures if jumbo frames were used). .IP "\-T " 4 .IX Item "-T " Sets the packet encapsulation type of the output capture file. If the \fB\-T\fR flag is used to specify a frame encapsulation type, the encapsulation type of the output capture file will be forced to the specified type, rather than being the type appropriate to the encapsulation type of the input capture files. .Sp Note that this merely forces the encapsulation type of the output file to be the specified type; the packet headers of the packets will not be translated from the encapsulation type of the input capture file to the specified encapsulation type (for example, it will not translate an Ethernet capture to an \s-1FDDI\s0 capture if an Ethernet capture is read and '\fB\-T fddi\fR' is specified). .IP "\-v" 4 .IX Item "-v" Causes \fBmergecap\fR to print a number of messages while it's working. .IP "\-w |\-" 4 .IX Item "-w |-" Sets the output filename. If the name is '\fB\-\fR', stdout will be used. This setting is mandatory. .SH "EXAMPLES" .IX Header "EXAMPLES" To merge two capture files together, 100 seconds apart use: .PP .Vb 1 \& capinfos \-aeS a.pcap b.pcap .Ve .PP (Let's suppose a.pcap starts at 1009932757 and b.pcap ends at 873660281. 1009932757 \- 873660281 \- 100 = 136272376 seconds.) .PP .Vb 2 \& editcap \-t 136272376 b.pcap b\-shifted.pcap \& mergecap \-w compare.pcap a.pcap b\-shifted.pcap .Ve .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIpcap\fR\|(3), \fIwireshark\fR\|(1), \fItshark\fR\|(1), \fIdumpcap\fR\|(1), \fIeditcap\fR\|(1), \fItext2pcap\fR\|(1), \&\fIpcap\-filter\fR\|(7) or \fItcpdump\fR\|(8) .SH "NOTES" .IX Header "NOTES" \&\fBMergecap\fR is based heavily upon \fBeditcap\fR by Richard Sharpe and Guy Harris . .PP \&\fBMergecap\fR is part of the \fBWireshark\fR distribution. The latest version of \fBWireshark\fR can be found at . .PP \&\s-1HTML\s0 versions of the Wireshark project man pages are available at: . .SH "AUTHORS" .IX Header "AUTHORS" .Vb 3 \& Original Author \& \-\-\-\-\-\-\-\- \-\-\-\-\-\- \& Scott Renfro \& \& \& Contributors \& \-\-\-\-\-\-\-\-\-\-\-\- \& Bill Guyton .Ve