neulab/tldr huggingface dataset:
-infon (string) print track info for given track number, 1 being the first track in the file
-diso dump IsoMedia file boxes in XML output
-dxml dump IsoMedia file boxes and known track samples in XML output
-disox dump IsoMedia file boxes except sample tables in XML output
-keep-ods do not translate ISOM ODs and ESDs tags (debug purpose only)
-bt dump scene to BT format
-xmt dump scene to XMT format
-wrl dump scene to VRML format
-x3d dump scene to X3D XML format
-x3dc dump scene to X3D VRML format
-lsr dump scene to LASeR XML (XSR) format
-drtp dump rtp hint samples structure to XML output
-dts print sample timing, size and position in file to text output
-dtsx same as .I dts but does not print offset
-dtsc same as .I dts but analyse each sample for duplicated dts/cts (slow !)
-dtsxc same as .I dtsc but does not print offset (slow !)
-dnal (int) print NAL sample info of given track
-dnalc (int) print NAL sample info of given track, adding CRC for each nal
-dnald (int) print NAL sample info of given track without DTS and CTS info
-dnalx (int) print NAL sample info of given track without DTS and CTS info and adding CRC for each nal
-sdp dump SDP description of hinted file
-dsap (int) dump DASH SAP cues (see -cues) for a given track
-dsaps (int) same as .I dsap but only print sample number
-dsapc (int) same as .I dsap but only print CTS
-dsapd (int) same as .I dsap but only print DTS, -dsapp to only print presentation time
-dsapp (int) same as .I dsap but only print presentation time
-dcr dump ISMACryp samples structure to XML output
-dump-cover extract cover art
-dump-chap extract chapter file as TTXT format
-dump-chap-ogg extract chapter file as OGG format
-dump-chap-zoom extract chapter file as zoom format
-dump-udta [tkID:]4cc (string) extract udta for the given 4CC. If tkID is given, dumps from UDTA of the given track ID, otherwise moov is used
-mergevtt merge vtt cues while dumping
-ttxt (int) convert input subtitle to GPAC TTXT format if no parameter. Otherwise, dump given text track to GPAC TTXT format
-srt convert input subtitle to SRT format if no parameter. Otherwise, dump given text track to SRT format
-rip-mpd download manifest and segments of an MPD. Does not work with live sessions
-stat generate node/field statistics for scene
-stats generate node/field statistics per Access Unit
-statx generate node/field statistics for scene after each AU
-hash generate SHA-1 Hash of the input file
-comp (string) replace with compressed version all top level box types given as parameter, formated as orig_4cc_1=comp_4cc_1[,orig_4cc_2=comp_4cc_2]
-bin convert input XML file using NHML bitstream syntax to binary
-topcount (string) print to stdout the number of top-level boxes matching box types given as parameter, formated as 4cc_1,4cc_2N
-topsize (string) print to stdout the number of bytes of top-level boxes matching types given as parameter, formated as 4cc_1,4cc_2N or all for all boxes
Importing Options
File importing Syntax is .I add / .I cat filename[#FRAGMENT][:opt1...:optN=val] This process will create the destination file if not existing, and add the track(s) to it. If you wish to always create a new destination file, add .I -new. The supported input media types depend on your installation, check filters documentation for more info.
To select a desired media track from a source, a fragment identifier '#' can be specified, bfore any other options. The following syntax is used: * `#video`: adds the first video track found in source * `#audio`: adds the first audio track found in source * `#auxv`: adds the first auxiliary video track found in source * `#pict`: adds the first picture track found in source * `#trackID=ID` or `#ID`: adds the specified track. For IsoMedia files, ID is the track ID. For other media files, ID is the value indicated by MP4Box -info inputFile * `#pid=ID`: number of desired PID for MPEG-2 TS sources * `#prog_id=ID`: number of desired program for MPEG-2 TS sources * `#program=NAME`: name of desired program for MPEG-2 TS sources
By default all imports are performed sequentially, and final interleaving is done at the end; this however requires a temporary file holding original ISOBMF file (if any) and added files before creating the final output. Since this can become quite large, it is possible to add media to a new file without temporary storage, using .I -flat option, but this disables media interleaving.
If you wish to create an interleaved new file with no temporary storage, use the .I -newfs option. The interleaving might not be as precise as when using .I new since it is dependent on muxer input scheduling (each execution might lead to a slightly different result). Additionally in this mode: - Some muxing options (marked with X below) will be activated for all inputs (e.g it is not possible to import one AVC track with xps_inband and another without). - Some muxing options (marked as D below) cannot be used as they require temporary storage for file edition. - Usage of .I cat is possible, but concatenated sources will not be interleaved in the output. If you wish to perforom more complex cat/add operations without temp file, use the gpac application.
Note: MP4Box cannot start importing from a random point in the input, it always import from the begining.  If you wish to import from another point in the source, use the gpac application.
Note: When importing SRT or SUB files, MP4Box will choose default layout options to make the subtitle appear at the bottom of the video. You SHOULD NOT import such files before any video track is added to the destination file, otherwise the results will likelly not be useful (default SRT/SUB importing uses default serif font, fontSize 18 and display size 400x60). For more details, check TTXT doc.
When importing several tracks/sources in one pass, all options will be applied if relevant to each source. These options are set for all imported streams. If you need to specify these options par stream, set per-file options using the syntax -add stream[:opt1:...:optN]. Allowed per-file options:
dur (int) X import only the specified duration from the media. Value can be: * positive float: specifies duration in seconds * fraction: specifies duration as NUM/DEN fraction * negative integer: specifies duration in number of coded frames
lang (string) set imported media language code
delay (int) set imported media initial delay in ms
par (string) set visual pixel aspect ratio (see .I -par )
clap (string) set visual clean aperture (see .I -clap )
mx (string) set track matrix (see .I -mx )
name (string) set track handler name
ext (string) override file extension when importing
hdlr (string) set track handler type to the given code point (4CC)
disable disable imported track(s)
group (int) add the track as part of the G alternate group. If G is 0, the first available GroupID will be picked
fps (string) same as .I fps
rap D import only RAP samples
refs D import only reference pictures
trailing keep trailing 0-bytes in AVC/HEVC samples
agg (int) X same as .I agg
dref X same as .I dref
keep_refs keep track reference when importing a single track
nodrop same as .I nodrop
packed X same as .I packed
sbr same as .I sbr
sbrx same as .I sbrx
ovsbr same as .I ovsbr
ps same as .I ps
psx same as .I psx
asemode (string) X set the mode to create the AudioSampleEntry. Value can be: * v0-bs: use MPEG AudioSampleEntry v0 and the channel count from the bitstream (even if greater than 2) - default * v0-2: use MPEG AudioSampleEntry v0 and the channel count is forced to 2 * v1: use MPEG AudioSampleEntry v1 and the channel count from the bitstream * v1-qt: use QuickTime Sound Sample Description Version 1 and the channel count from the bitstream (even if greater than 2). This will also trigger using alis data references instead of url, even for non-audio tracks
audio_roll (int) add a roll sample group with roll_distance N
mpeg4 X same as .I mpeg4 option
nosei discard all SEI messages during import
svc import SVC/LHVC with explicit signaling (no AVC base compatibility)
nosvc discard SVC/LHVC data when importing
svcmode (string) D set SVC/LHVC import mode. Value can be: * split: each layer is in its own track * merge: all layers are merged in a single track * splitbase: all layers are merged in a track, and the AVC base in another * splitnox: each layer is in its own track, and no extractors are written * splitnoxib: each layer is in its own track, no extractors are written, using inband param set signaling
temporal (string) D set HEVC/LHVC temporal sublayer import mode. Value can be: * split: each sublayer is in its own track * splitbase: all sublayers are merged in a track, and the HEVC base in another * splitnox: each layer is in its own track, and no extractors are written
subsamples add SubSample information for AVC+SVC
deps import sample dependency information for AVC and HEVC
ccst add default HEIF ccst box to visual sample entry
forcesync force non IDR samples with I slices to be marked as sync points (AVC GDR) Warning: RESULTING FILE IS NOT COMPLIANT WITH THE SPEC but will fix seeking in most players
xps_inband X set xPS inband for AVC/H264 and HEVC (for reverse operation, re- import from raw media)
xps_inbandx X same as xps_inband and also keep first xPS in sample desciption
au_delim keep AU delimiter NAL units in the imported file
max_lid (int) set HEVC max layer ID to be imported to N (by default imports all layers)
max_tid (int) set HEVC max temporal ID to be imported to N (by default imports all temporal sublayers)
tiles add HEVC tiles signaling and NALU maps without splitting the tiles into different tile tracks
split_tiles D split HEVC tiles into different tile tracks, one tile (or all tiles of one slice) per track
negctts use negative CTS-DTS offsets (ISO4 brand)
chap specify the track is a chapter track
chapter (string) add a single chapter (old nero format) with given name lasting the entire file
chapfile (string) add a chapter file (old nero format)
layout (string) specify the track layout as WxHxXxY * if W (resp H) = 0: the max width (resp height) of the tracks in the file are used * if Y=-1: the layout is moved to the bottom of the track area * X and Y can be omitted: :layout=WxH
rescale (int) force media timescale to TS !! changes the media duration
timescale (int) set imported media timescale to TS
moovts (int) set movie timescale to TS. A negative value picks the media timescale of the first track imported
noedit X do not set edit list when importing B-frames video tracks
rvc (string) set RVC configuration for the media
fmt (string) override format detection with given format (cf BT/XMTA doc)
profile (int) override AVC profile
level (int) override AVC level
novpsext remove VPS extensions from HEVC VPS
keepav1t keep AV1 temporal delimiter OBU in samples, might help if source file had losses
font (string) specify font name for text import (default Serif)
size (int) specify font size for text import (default 18)
text_layout (string) specify the track text layout as WxHxXxY * if W (resp H) = 0: the max width (resp height) of the tracks in the file are used * if Y=-1: the layout is moved to the bottom of the track area * X and Y can be omitted: :layout=WxH
swf-global all SWF defines are placed in first scene replace rather than when needed
swf-no-ctrl use a single stream for movie control and dictionary (this will disable ActionScript)
swf-no-text remove all SWF text
swf-no-font remove all embedded SWF Fonts (local playback host fonts used)
swf-no-line remove all lines from SWF shapes
swf-no-grad remove all gradients from SWF shapes
swf-quad use quadratic bezier curves instead of cubic ones
swf-xlp support for lines transparency and scalability
swf-ic2d use indexed curve 2D hardcoded proto
swf-same-app appearance nodes are reused
swf-flatten (number) complementary angle below which 2 lines are merged, 0 means no flattening
kind (string) set kind for the track as schemeURI=value
txtflags (int) set display flags (hexa number) of text track. Use txtflags+=FLAGS to add flags and txtflags-=FLAGS to remove flags
rate (int) force average rate and max rate to VAL (in bps) in btrt box. If 0, removes btrt box
stz2 use compact size table (for low-bitrates)
bitdepth (int) set bit depth to VAL for imported video content (default is 24)
colr (string) set color profile for imported video content (see ISO/IEC 23001-8). Value is formatted as: * nclc,p,t,m: with p colour primary, t transfer characteristics and m matrix coef * nclx,p,t,m,r: same as nclx with r full range flag * prof,path: with path indicating the file containing the ICC color profile * rICC,path: with path indicating the file containing the restricted ICC color profile
dv-profile (int) set the Dolby Vision profile
tc (string) inject a single QT timecode. Value is formated as: * [d]FPS[/FPS_den],h,m,s,f[,framespertick]: optional drop flag, framerate (integer or fractional), hours, minutes, seconds and frame number * : d is an optional flag used to indicate that the counter is in drop-frame format * : the framespertick is optional and defaults to round(framerate); it indicates the number of frames per counter tick
lastsampdur (string) set duration of the last sample. Value is formated as: * no value: use the previous sample duration * integer: indicate the duration in milliseconds * N/D: indicate the duration as fractional second
fstat print filter session stats after import
fgraph print filter session graph after import
sopt:[OPTS] set OPTS as additional arguments to source filter. OPTS can be any usual filter argument, see filter doc `gpac -h doc`
dopt:[OPTS] X set OPTS as additional arguments to destination filter. OPTS can be any usual filter argument, see filter doc `gpac -h doc`
@@f1[:args][@@fN:args] set a filter chain to insert before the muxer. Each filter in the chain is formatted as a regular filter, see filter doc `gpac -h doc`. If several filters are set, they will be chained in the given order. The last filter shall not have any Filter ID specified
Note: sopt, dopt and @@f must be placed after all other options.
Global import options -add (string) add given file tracks to file. Multiple inputs can be specified using +, eg -add url1+url2
-cat (string) concatenate given file samples to file, creating tracks if needed. Multiple inputs can be specified using +(eg -cat url1+url2). Note: This aligns initial timestamp of the file to be concatenated
-catx (string) same as .I cat but new tracks can be imported before concatenation by specifying +ADD_COMMAND where ADD_COMMAND is a regular .I add syntax
-catpl (string) concatenate files listed in the given playlist file (one file per line, lines starting with # are comments). Note: Each listed file is concatenated as if called with -cat
-unalign-cat (string) do not attempt to align timestamps of samples inbetween tracks
-force-cat (string) skip media configuration check when concatenating file. Warning: THIS MAY BREAK THE CONCATENATED TRACK(S)
-keep-sys keep all MPEG-4 Systems info when using .I add and .I cat (only used when adding IsoMedia files)
-dref keep media data in original file using data referencing. The resulting file only contains the meta-data of the presentation (frame sizes, timing, etc...) and references media data in the original file. This is extremely useful when developping content, since importing and storage of the MP4 file is much faster and the resulting file much smaller. Note: Data referencing may fail on some files because it requires the framed data (eg an IsoMedia sample) to be continuous in the original file, which is not always the case depending on the original interleaving or bitstream format (AVC or HEVC cannot use this option)
-no-drop force constant FPS when importing AVI video
-packed force packed bitstream when importing raw MPEG-4 part 2 Advanced Simple Profile
-sbr backward compatible signaling of AAC-SBR
-sbrx non-backward compatible signaling of AAC-SBR
-ps backward compatible signaling of AAC-PS
-psx non-backward compatible signaling of AAC-PS
-ovsbr oversample SBR import (SBR AAC, PS AAC and oversampled SBR cannot be detected at import time)
-fps (string, default: 25) force frame rate for video and SUB subtitles import to the given value, expressed as a number or as timescale-increment. Note: For raw H263 import, default FPS is 15, otherwise 25. This is ignored for ISOBMFF import, use :rescale option for that
-mpeg4 force MPEG-4 sample descriptions when possible. For AAC, forces MPEG-4 AAC signaling even if MPEG-2
-agg (int) aggregate N audio frames in 1 sample (3GP media only, maximum value is 15)
Hinting Options IsoMedia hinting consists in creating special tracks in the file that contain transport protocol specific information and optionally multiplexing information. These tracks are then used by the server to create the actual packets being sent over the network, in other words they provide the server with hints on how to build packets, hence their names hint tracks. MP4Box supports creation of hint tracks for RTSP servers supporting these such as QuickTime Streaming Server, DarwinStreaming Server or 3GPP- compliant RTSP servers. Note: GPAC streaming tools rtp output and rtsp server do not use hint tracks, they use on-the-fly packetization from any media sources, not just MP4
-hint hint the file for RTP/RTSP
-mtu (int, default: 1450) specify RTP MTU (max size) in bytes (this includes 12 bytes RTP header)
-copy copy media data to hint track rather than reference (speeds up server but takes much more space)
-multi [maxptime] (int) enable frame concatenation in RTP packets if possible (with max duration 100 ms or maxptime ms if given)
-rate (int, default: 90000) specify rtp rate in Hz when no default for payload
-mpeg4 force MPEG-4 generic payload whenever possible
-latm force MPG4-LATM transport for AAC streams
-static enable static RTP payload IDs whenever possible (by default, dynamic payloads are always used)
-add-sdp (string) add given SDP string to hint track (tkID:string) or movie (string)
-no-offset signal no random offset for sequence number and timestamp (support will depend on server)
-unhint remove all hinting information from file
-group-single put all tracks in a single hint group
-ocr force all MPEG-4 streams to be synchronized (MPEG-4 Systems only)
-rap signal random access points in RTP packets (MPEG-4 Systems)
-ts signal AU Time Stamps in RTP packets (MPEG-4 Systems)
-size signal AU size in RTP packets (MPEG-4 Systems)
-idx signal AU sequence numbers in RTP packets (MPEG-4 Systems)
-iod prevent systems tracks embedding in IOD (MPEG-4 Systems), not compatible with .I isma
MPEG-4 Scene Encoding Options General considerations MP4Box supports encoding and decoding of of BT, XMT, VRML and (partially) X3D formats int MPEG-4 BIFS, and encoding and decoding of XSR and SVG into MPEG-4 LASeR Any media track specified through a MuxInfo element will be imported in the resulting MP4 file. See https://wiki.gpac.io/MPEG-4-BIFS-Textual-Format and related pages.
Scene Random Access MP4Box can encode BIFS or LASeR streams and insert random access points at a given frequency. This is useful when packaging content for broadcast, where users will not turn in the scene at the same time. In MPEG-4 terminology, this is called the scene carousel.## BIFS Chunk Processing The BIFS chunk encoding mode alows encoding single BIFS access units from an initial context and a set of commands. The generated AUs are raw BIFS (not SL-packetized), in files called FILE- ESID-AUIDX.bifs, with FILE the basename of the input file. Commands with a timing of 0 in the input will modify the carousel version only (i.e. output context). Commands with a timing different from 0 in the input will generate new AUs.
-mp4 specify input file is for encoding
-def encode DEF names in BIFS
-sync (int) force BIFS sync sample generation every given time in ms (cannot be used with .I shadow )
-shadow (int) force BIFS sync shadow sample generation every given time in ms (cannot be used with .I sync )
-sclog generate scene codec log file if available
-ms (string) import tracks from the given file
-ctx-in (string) specify initial context (MP4/BT/XMT) file for chunk processing. Input file must be a commands-only file
-ctx-out (string) specify storage of updated context (MP4/BT/XMT) file for chunk processing, optional
-resolution (int) resolution factor (-8 to 7, default 0) for LASeR encoding, and all coords are multiplied by 2^res before truncation (LASeR encoding)
-coord-bits (int) number of bits used for encoding truncated coordinates (0 to 31, default 12) (LASeR encoding)
-scale-bits (int) extra bits used for encoding truncated scales (0 to 4, default 0) (LASeR encoding)
-auto-quant (int) resolution is given as if using -resolution but coord-bits and scale-bits are infered (LASeR encoding)
Encryption/Decryption Options MP4Box supports encryption and decryption of ISMA, OMA and CENC content, see encryption filter `gpac -h cecrypt`. It requires a specific XML file called CryptFile, whose syntax is available at https://wiki.gpac.io/Common-Encryption
-crypt (string) encrypt the input file using the given CryptFile
-decrypt (string) decrypt the input file, potentially using the given CryptFile. If CryptFile is not given, will fail if the key management system is not supported
-set-kms (string) change ISMA/OMA KMS location for all tracks, or for a given one if ID=kms_uri is used
Meta and HEIF Options IsoMedia files can be used as generic meta-data containers, for examples storing XML information and sample images for a movie. The resulting file may not always contain a movie as is the case with some HEIF files or MPEG-21 files.
These information can be stored at the file root level, as is the case for HEIF/IFF and MPEG-21 file formats, or at the moovie or track level for a regular movie.
-set-meta ABCD[:tk=tkID] (string) set meta box type, with ABCD the four char meta type (NULL or 0 to remove meta) * tk not set: use root (file) meta * tkID == 0: use moov meta * tkID != 0: use meta of given track
-add-items (string) add resource to meta, with parameter syntax file_path[:opt1:optN] * file_path `this` or `self`: item is the file itself * tk=tkID: meta location (file, moov, track) * name=str: item name * type=itype: item 4cc type (not needed if mime is provided) * mime=mtype: item mime type * encoding=enctype: item content-encoding type * id=ID: item ID * ref=4cc,id: reference of type 4cc to an other item
-add-image (string) add the given file (with parameters) as HEIF image item. Same syntax as .I add-item * name=str: see .I add-item * id=id: see .I add-item * ref=4cc, id: see .I add-item * primary: indicate that this item should be the primary item * time=t: use the next sync sample after time t (float, in sec, default 0). A negative time imports ALL frames as items * split_tiles: for an HEVC tiled image, each tile is stored as a separate item * rotation=a: set the rotation angle for this image to 90*a degrees anti-clockwise * hidden: indicate that this image item should be hidden * icc_path: path to icc to add as colr * alpha: indicate that the image is an alpha image (should use ref=auxl also) - any other option will be passed as options to the media importer, see .I add
-rem-item item_ID[:tk=tkID] (string) remove resource from meta
-set-primary item_ID[:tk=tkID] (string) set item as primary for meta
-set-xml xml_file_path[:tk=tkID][:binary] (string) set meta XML data
-rem-xml [tk=tkID] (string) remove meta XML data
-dump-xml file_path[:tk=tkID] (string) dump meta XML to file
-dump-item item_ID[:tk=tkID][:path=fileName] (string) dump item to file
-package (string) package input XML file into an ISO container, all media referenced except hyperlinks are added to file
-package (string) package input XML file into an MPEG-U widget with ISO container, all files contained in the current folder are added to the widget package
SWF Importer Options MP4Box can import simple Macromedia Flash files (".SWF") You can specify a SWF input file with '-bt', '-xmt' and '-mp4' options
-global all SWF defines are placed in first scene replace rather than when needed
-no-ctrl use a single stream for movie control and dictionary (this will disable ActionScript)
-no-text remove all SWF text
-no-font remove all embedded SWF Fonts (local playback host fonts used)
-no-line remove all lines from SWF shapes
-no-grad remove all gradients from swf shapes
-quad use quadratic bezier curves instead of cubic ones
-xlp support for lines transparency and scalability
-flatten (number) complementary angle below which 2 lines are merged, value 0means no flattening
Live Scene Encoder Options The options shall be specified as Ã²pt_name=opt_val. Options:
-dst (string) destination IP
-port (int, default: 7000) destination port
-mtu (int, default: 1450) path MTU for RTP packets
-ifce (string) IP address of the physical interface to use
-ttl (int, default: 1) time to live for multicast packets
-sdp (string, default: session.sdp) output SDP file
-dims turn on DIMS mode for SVG input
-no-rap disable RAP sending and carousel generation
-src (string) source of scene updates
-rap (int) duration in ms of base carousel; you can specify the RAP period of a single ESID (not in DIMS) using ESID=X:time
Runtime options: * q: quits * u: inputs some commands to be sent * U: same as u but signals the updates as critical * e: inputs some commands to be sent without being aggregated * E: same as e but signals the updates as critical * f: forces RAP sending * F: forces RAP regeneration and sending * p: dumps current scene
Basic and advanced examples are available at https://wiki.gpac.io/MP4Box- Introduction
Authors: GPAC developers, see git repo history (-log) For bug reports, feature requests, more information and source code, visit http://github.com/gpac/gpac build: 1.0.1-rev0-g7c36b3027-master Copyright: (c) 2000-2020 Telecom Paris distributed under LGPL v2.1+ - http://gpac.io
gpac(1), MP4Client(1)
CRUNCH(1)                    General Commands Manual                   CRUNCH(1)
crunch - generate wordlists from a character set
crunch <min-len> <max-len> [<charset string>] [options]
Crunch can create a wordlist based on criteria you specify.  The output from crunch can be sent to the screen, file, or to another program.  The required parameters are:
min-len The minimum length string you want crunch to start at.  This option is required even for parameters that won't use the value.
max-len The maximum length string you want crunch to end at.  This option is required even for parameters that won't use the value.
charset string You may specify character sets for crunch to use on the command line or if you leave it blank crunch will use the default character sets.  The order MUST BE lower case characters, upper case characters, numbers, and then symbols.  If you don't follow this order you will not get the results you want.  You MUST specify either values for the character type or a plus sign. NOTE: If you want to include the space character in your character set you must escape it using the \ character or enclose your character set in quotes i.e. "abc ".  See the examples 3, 11, 12, and 13 for examples.
-b number[type] Specifies the size of the output file, only works if -o START is used, i.e.: 60MB  The output files will be in the format of starting letter-ending letter for example: ./crunch 4 5 -b 20mib -o START will generate 4 files: aaaa-gvfed.txt, gvfee-ombqy.txt, ombqz-wcydt.txt, wcydu-zzzzz.txt valid values for type are kb, mb, gb, kib, mib, and gib.  The first three types are based on 1000 while the last three types are based on 1024.  NOTE There is no space between the number and type.  For example 500mb is correct 500 mb is NOT correct.
-c number Specifies the number of lines to write to output file, only works if -o START is used, i.e.: 60  The output files will be in the format of starting letter-ending letter for example: ./crunch 1 1 -f /pentest/password/crunch/charset.lst mixalpha-numeric-all-space -o START -c 60 will result in 2 files: a-7.txt and 8-\ .txt  The reason for the slash in  the second filename is the ending character is space and ls has to escape it to print it.  Yes you will need to put in the \ when specifying the filename because the last character is a space.
-d numbersymbol Limits the number of duplicate characters.  -d 2@ limits the lower case alphabet to output like aab and aac.  aaa would not be generated as that is 3 consecutive letters of a.  The format is number then symbol where number is the maximum number of consecutive characters and symbol is the symbol of the the character set you want to limit i.e. @,%^   See examples 17-19.
-e string Specifies when crunch should stop early
-f /path/to/charset.lst charset-name Specifies a character set from the charset.lst
-i Inverts the output so instead of aaa,aab,aac,aad, etc you get aaa,baa,caa,daa,aba,bba, etc
-l When you use the -t option this option tells crunch which symbols should be treated as literals.  This will allow you to use the placeholders as letters in the pattern.  The -l option should be the same length as the -t option.  See example 15.
-m Merged with -p.  Please use -p instead.
-o wordlist.txt Specifies the file to write the output to, eg: wordlist.txt
-p charset OR -p word1 word2 ... Tells crunch to generate words that don't have repeating characters.  By default crunch will generate a wordlist size of #of_chars_in_charset ^ max_length.  This option will instead generate #of_chars_in_charset!.  The ! stands for factorial.  For example say the charset is abc and max length is 4..  Crunch will by default generate 3^4 = 81 words.  This option will instead generate 3! = 3x2x1 = 6 words (abc, acb, bac, bca, cab, cba). THIS MUST BE THE LAST OPTION!  This option CANNOT be used with -s and it ignores min and max length however you must still specify two numbers.
-q filename.txt Tells crunch to read filename.txt and permute what is read.  This is like the -p option except it gets the input from filename.txt.
-r Tells crunch to resume generate words from where it left off.  -r only works if you use -o.  You must use the same command as the original command used to generate the words.  The only exception to this is the -s option.  If your original command used the -s option you MUST remove it before you resume the session.  Just add -r to the end of the original command.
-s startblock Specifies a starting string, eg: 03god22fs
-t @,%^ Specifies a pattern, eg: @@god@@@@ where the only the @'s, ,'s, %'s, and ^'s will change. @ will insert lower case characters , will insert upper case characters % will insert numbers ^ will insert symbols
-u The -u option disables the printpercentage thread.  This should be the last option.
-z gzip, bzip2, lzma, and 7z Compresses the output from the -o option.  Valid parameters are gzip, bzip2, lzma, and 7z. gzip is the fastest but the compression is minimal.  bzip2 is a little slower than gzip but has better compression.  7z is slowest but has the best compression.
Example 1 crunch 1 8 crunch will display a wordlist that starts at a and ends at zzzzzzzz
Example 2 crunch 1 6 abcdefg crunch will display a wordlist using the character set abcdefg that starts at a and ends at gggggg
Example 3 crunch 1 6 abcdefg\ there is a space at the end of the character string.  In order for crunch to use the space you will need to escape it using the \ character.  In this example you could also put quotes around the letters and not need the \, i.e. "abcdefg ".  Crunch will display a wordlist using the character set abcdefg  that starts at a and ends at (6 spaces)
Example 4 crunch 1 8 -f charset.lst mixalpha-numeric-all-space -o wordlist.txt crunch will use the mixalpha-numeric-all-space character set from charset.lst and will write the wordlist to a file named wordlist.txt. The file will start with a and end with "        "
Example 5 crunch 8 8 -f charset.lst mixalpha-numeric-all-space -o wordlist.txt -t @@dog@@@ -s cbdogaaa crunch should generate a 8 character wordlist using the mixalpha-number- all-space character set from charset.lst and will write the wordlist to a file named wordlist.txt.  The file will start at cbdogaaa and end at " dog   "
Example 6 crunch 2 3 -f charset.lst ualpha -s BB crunch with start generating a wordlist at BB and end with ZZZ.  This is useful if you have to stop generating a wordlist in the middle.  Just do a tail wordlist.txt and set the -s parameter to the next word in the sequence.  Be sure to rename the original wordlist BEFORE you begin as crunch will overwrite the existing wordlist.
Example 7 crunch 4 5 -p abc The numbers aren't processed but are needed. crunch will generate abc, acb, bac, bca, cab, cba.
Example 8 crunch 4 5 -p dog cat bird The numbers aren't processed but are needed. crunch will generate birdcatdog, birddogcat, catbirddog, catdogbird, dogbirdcat, dogcatbird.
Example 9 crunch 1 5 -o START -c 6000 -z bzip2 crunch will generate bzip2 compressed files with each file containing 6000 words.  The filenames of the compressed files will be first_word- last_word.txt.bz2
# time ./crunch 1 4 -o START -c 6000 -z gzip real    0m2.729s user    0m2.216s sys     0m0.360s
# time ./crunch 1 4 -o START -c 6000 -z bzip2 real    0m3.414s user    0m2.620s sys     0m0.580s
# time ./crunch 1 4 -o START -c 6000 -z lzma real    0m43.060s user    0m9.965s sys     0m32.634s
size  filename 30K   aaaa-aiwt.txt 12K   aaaa-aiwt.txt.gz 3.8K  aaaa-aiwt.txt.bz2 1.1K  aaaa-aiwt.txt.lzma
Example 10 crunch 4 5 -b 20mib -o START will generate 4 files: aaaa-gvfed.txt, gvfee-ombqy.txt, ombqz-wcydt.txt, wcydu-zzzzz.txt the first three files are 20MBs (real power of 2 MegaBytes) and the last file is 11MB.
Example 11 crunch 3 3 abc + 123 !@# -t @%^ will generate a 3 character long word with a character as the first character, and number as the second character, and a symbol for the third character.  The order in which you specify the characters you want is important.  You must specify the order as lower case character, upper case character, number, and symbol.  If you aren't going to use a particular character set you use a plus sign as a placeholder.  As you can see I am not using the upper case character set so I am using the plus sign placeholder.  The above will start at a1! and end at c3#
Example 12 crunch 3 3 abc + 123 !@# -t ^%@ will generate 3 character words starting with !1a and ending with #3c
Example 13 crunch 4 4  + + 123 + -t %%@^ the plus sign (+) is a place holder so you can specify a character set for the character type.  crunch will use the default character set for the character type when crunch encounters a + (plus sign) on the command line.  You must either specify values for each character type or use the plus sign.  I.E. if you have two characters types you MUST either specify values for each type or use a plus sign.  So in this example the character sets will be: abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 123 !@#$%^&*()-_+=~`[]{}|\:;"'<>,.?/ there is a space at the end of the above string the output will start at 11a! and end at "33z ".  The quotes show the space at the end of the string.
Example 14 crunch 5 5 -t ddd@@ -o j -p dog cat bird any character other than one of the following: @,%^ is the placeholder for the words to permute.  The @,%^ symbols have the same function as -t. If you want to use @,%^ in your output you can use the -l option to specify which character you want crunch to treat as a literal. So the results are birdcatdogaa birdcatdogab birdcatdogac <skipped> dogcatbirdzy dogcatbirdzz
Example 15 crunch 7 7 -t p@ss,%^ -l a@aaaaa crunch will now treat the @ symbol as a literal character and not replace the character with a uppercase letter. this will generate p@ssA0! p@ssA0@ p@ssA0# p@ssA0$ <skipped> p@ssZ9
Example 16 crunch 5 5 -s @4#S2 -t @%^,2 -e @8 Q2 -l @dddd -b 10KB -o START crunch will generate 5 character strings starting with @4#S2 and ending at @8 Q2.  The output will be broken into 10KB sized files named for the files starting and ending strings.
Example 17 crunch 5 5 -d 2@ -t @@@%% crunch will generate 5 character strings staring with aab00 and ending at zzy99.  Notice that aaa and zzz are not present.
Example 18 crunch 10 10 -t @@@^%%%%^^ -d 2@ -d 3% -b 20mb -o START crunch will generate 10 character strings starting with aab!0001!! and ending at zzy 9998    The output will be written to 20mb files.
Example 19 crunch 8 8 -d 2@ crunch will generate 8 characters that limit the same number of lower case characters to 2.  Crunch will start at aabaabaa and end at zzyzzyzz.
Example 20 crunch 4 4 -f unicode_test.lst japanese -t @@%% -l @xdd crunch will load some Japanese characters from the unicode_test character set file.  The output will start at @日00 and end at @語99.
You can use crunch's output and pipe it into other programs.  The two most popular programs to pipe crunch into are: aircrack-ng and airolib- ng.  The syntax is as follows: crunch 2 4 abcdefghijklmnopqrstuvwxyz | aircrack-ng /root/Mycapfile.cap -e MyESSID -w- crunch 10 10 12345 --stdout | airolib-ng testdb -import passwd -
1. Starting in version 2.6 crunch will display how much data is about to be generated.  In 2.7 it will also display how many lines will be generated.  Crunch will now wait 3 seconds BEFORE it begins generating data to give you time to press Ctrl-C to abort crunch if you find the values are too large for your application.
2. I have added hex-lower (0123456789abcdef) and hex-upper (0123456789ABCDEF) to charset.lst.
3. Several people have requested that I add support for the space character to crunch.  crunch has always supported the space character on the command line and in the charset.lst.  To add a space on the command line you must escape it using the / character.  See example 3 for the syntax.  You may need to escape other characters like ! or # depending on your operating system.
4. Starting in 2.7 if you are generating a file then every 10 seconds you will receive the % done.
5. Starting in 3.0 I had to change the -t * character to a , as the * is a reserved character.  You could still use it if you put a \ in front of the *.  Yes it breaks crunch's syntax and I do my best to avoid doing that, but in this instance it is easier to make the change for long term support.
6. Some output is missing.  A file didn't get generated. The mostly explanation is you ran out of disk space.  If you have verified you have plenty of disk space then the problem is most likely the filename begins with a period.  In Linux filenames that begin with a period are hidden.  To view them do a ls -l .*
7. Crunch says The maximum and minimum length should be the same size as the pattern you specified, however the length is set correctly. This usually means your pattern contains a character that needs to be escaped. In bash you need to escape the followings: &, *, space, \, (, ), |, ', ", ;, <, >. The escape character in bash is a \.  So a pattern that has a & and a * in it would look like this: crunch 4 4 -t \&\*d@ An alternative to escaping characters is to wrap your string with quotes. For example: crunch 4 4 -t "&*d@" If you want to use the " in your pattern you will need to escape it like this: crunch 4 4 -t "&*\"@" Please note that different terminals have different escape characters and probably have different characters that will need escaping.  Please check the manpage of your terminal for the escape characters and characters that need escaping.
8. When using the -z 7z option, 7z does not delete the original file. You will have to delete those files by hand.
This manual page was written by bofh28@gmail.com
Crunch version 1.0 was written by mimayin@aciiid.ath.cx all later versions of crunch have been updated by bofh28@gmail.com
If you find any please email bofh28 <bofh28@gmail.com> or post to http://www.backtrack-linux.org
Copyright (c) 2009-2013 bofh28 <bofh28@gmail.com>
This file is a part of Crunch.
Crunch is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2 only of the License.
Crunch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Crunch.  If not, see <http://www.gnu.org/licenses/>.
INKSCAPE(1)                 Inkscape Commands Manual                 INKSCAPE(1)
Inkscape - an SVG (Scalable Vector Graphics) editing program.
"inkscape [options] [filename_1 filename_2 ...]"
-?, --help -V, --version --debug-info --system-data-directory --user-data-directory
-p, --pipe --pdf-page=PAGE --pdf-poppler --convert-dpi-method=METHOD --no-convert-text-baseline-spacing
-o, --export-filename=FILENAME --export-overwrite --export-type=TYPE[,TYPE]* --export-extension=EXTENSION-ID
-C, --export-area-page -D, --export-area-drawing -a, --export-area=x0:y0:x1:y1 --export-area-snap -d, --export-dpi=DPI -w, --export-width=WIDTH -h, --export-height=HEIGHT --export-margin=MARGIN
-i, --export-id=OBJECT-ID[;OBJECT-ID]* -j, --export-id-only -l, --export-plain-svg --export-ps-level=LEVEL --export-pdf-version=VERSION -T, --export-text-to-path --export-latex --export-ignore-filters -t, --export-use-hints -b, --export-background=COLOR -y, --export-background-opacity=VALUE
-I, --query-id=OBJECT-ID[,OBJECT-ID]* -S, --query-all -X, --query-x -Y, --query-y -W, --query-width -H, --query-height
--vacuum-defs --select=OBJECT-ID[,OBJECT-ID]* --actions=ACTION(:ARG)[;ACTION(:ARG)]* --action-list --verb=VERB[;VERB]* --verb-list
-g, --with-gui --batch-process --shell
Inkscape is a Free and open source vector graphics editor. It offers a rich set of features and is widely used for both artistic and technical illustrations such as cartoons, clip art, logos, typography, diagramming and flowcharting.  It uses vector graphics to allow for sharp printouts and renderings at unlimited resolution and is not bound to a fixed number of pixels like raster graphics. Inkscape uses the standardized SVG file format as its main format, which is supported by many other applications including web browsers.
The interface is designed to be comfortable and efficient for skilled users, while remaining conformant to GNOME standards so that users familiar with other GNOME applications can learn its interface rapidly.
SVG is a W3C standard XML format for 2D vector drawing. It allows defining objects in the drawing using points, paths, and primitive shapes.  Colors, fonts, stroke width, and so forth are specified as `style' attributes to these objects.  The intent is that since SVG is a standard, and since its files are text/xml, it will be possible to use SVG files in a sizeable number of programs and for a wide range of uses.
Inkscape uses SVG as its native document format, and has the goal of becoming the most fully compliant drawing program for SVG files available in the Open Source community.
-?, --help Shows a help message.
-V, --version Shows the Inkscape version and build date.
--debug-info Prints technical information including Inkscape version, dependency versions and operating system.  This Information is useful when debugging issues with Inkscape and should be included whenever filing a bug report.
--system-data-directory Prints the system data directory where data files that ship with Inkscape are stored. This includes files which Inkscape requires to run (like unit definitions, built-in key maps, files describing UI layout, icon themes, etc.), core extensions, stock resources (filters, fonts, markers, color palettes, symbols, templates) and documentation (SVG example files, tutorials).
The location in which Inkscape expects the system data directory can be overridden with the INKSCAPE_DATADIR environment variable.
--user-data-directory Prints the user profile directory where user-specific data files and preferences are stored.  Custom extensions and resources (filters, fonts, markers, color palettes, symbols, templates) should be installed into their respective subdirectories in this directory. In addition placing a file with a name identical to one in the system data directory here allows to override most presets from the system data directory (e.g. default templates, UI files, etc.).
The default location of the profile directory can be overridden with the INKSCAPE_PROFILE_DIR environment variable.
-p, --pipe Reads input file from standard input (stdin).
--pdf-page=PAGE Imports the given page of a pdf file. Numbering starts with 1.
--pdf-poppler By default Inkscape imports PDF files via an internal (poppler- derived) library.  Text is stored as text. Meshes are converted to tiles.  Use --pdf-poppler to import via an external (poppler with cairo backend) library instead. Text consists of groups containing cloned glyphs where each glyph is a path.  Images are stored internally. Meshes cause entire document to be rendered as a raster image.
--convert-dpi-method=METHOD Choose method used to rescale legacy (pre-0.92) files which render slightly smaller due to the switch from 90 DPI to 96 DPI when interpreting lengths expressed in units of pixels. Possible values are "none" (no change, document will render at 94% of its original size), "scale-viewbox" (document will be rescaled globally, individual lengths will stay untouched) and "scale- document" (each length will be re-scaled individually).
--no-convert-text-baseline-spacing Do not automatically fix text baselines in legacy (pre-0.92) files on opening.  Inkscape 0.92 adopts the CSS standard definition for the 'line-height' property, which differs from past versions.  By default, the line height values in files created prior to Inkscape 0.92 will be adjusted on loading to preserve the intended text layout.  This command line option will skip that adjustment.
-o, --export-filename=FILENAME Sets the name of the output file. The default is to re-use the name of the input file.  If --export-type is also used, the file extension will be adjusted (or added) as appropriate.  Otherwise the file type to export will be inferred from the extension of the specified filename.
Usage of the special filename "-" makes Inkscape write the image data to standard output (stdout).
--export-overwrite Overwrites input file.
--export-type=TYPE[,TYPE]* Specify the file type to export. Possible values: svg, png, ps, eps, pdf, emf, wmf and every file type for which an export extension exists. It is possible to export more than one file type at a time.
Note that PostScript does not support transparency, so any transparent objects in the original SVG will be automatically rasterized. Used fonts are subset and embedded. The default export area is page; you can set it to drawing by --export-area-drawing.
Note that PDF format preserves the transparency in the original SVG.
--export-extension=EXTENSION-ID Allows to specify an output extension that will be used for exporting, which is especially relevant if there is more than one export option for a given file type. If set, the file extension in --export-filename and --export-type may be omitted. Additionally, if set, only one file type may be given in --export-type.
-C, --export-area-page In SVG, PNG, PDF, PS exported area is the page. This is the default for SVG, PNG, PDF, and PS, so you don't need to specify this unless you are using --export-id to export a specific object. For EPS this option is currently not supported.
-D, --export-area-drawing In SVG, PNG, PDF, PS, and EPS export, exported area is the drawing (not page), i.e. the bounding box of all objects of the document (or of the exported object if --export-id is used). With this option, the exported image will display all the visible objects of the document without margins or cropping. This is the default export area for EPS. For PNG, it can be used in combination with --export-use-hints.
-a x0:y0:x1:y1, --export-area=x0:y0:x1:y1 In PNG export, set the exported area in SVG user units (anonymous length units normally used in Inkscape SVG).  The default is to export the entire document page.  The point (0,0) is the lower- left corner.
--export-area-snap For PNG export, snap the export area outwards to the nearest integer SVG user unit (px) values. If you are using the default export resolution of 96 dpi and your graphics are pixel-snapped to minimize antialiasing, this switch allows you to preserve this alignment even if you are exporting some object's bounding box (with --export-id or --export-area-drawing) which is itself not pixel-aligned.