Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
FPART(1)		  BSD General Commands Manual		      FPART(1)

NAME
     fpart -- Sort and pack files into partitions.

SYNOPSIS
     fpart [-h]	[-V] -n	num | -f files | -s size [-i infile] [-a] [-o outfile]
	   [-e]	[-v] [-l] [-b] [-y pattern] [-Y	pattern] [-x pattern]
	   [-X pattern]	[-z] [-Z] [-d depth] [-D] [-L] [-w cmd]	[-W cmd]
	   [-p num] [-q	num] [-r num] [FILE or DIR...]

DESCRIPTION
     The fpart utility helps you sort file trees and pack them into bags
     (called "partitions").

GENERAL	OPTIONS
     -h	     Print help

     -V	     Print version

PARTITION CONTROL
     -n	num  Create exactly num	partitions and try to generate partitions with
	     the same size and number of files.	This option cannot be used in
	     conjunction with -f, -s or	-L.

     -f	files
	     Create partitions containing at most files	files. This option can
	     be	used in	conjunction with -s and	-L.

     -s	size
	     Create partitions with a maximum size of size bytes. With this
	     option, partition 0 may be	used to	handle files that do not fit
	     in	a regular partition, given the provided	size limit. This op-
	     tion can be used in conjunction with -f and -L.

INPUT CONTROL
     -i	infile
	     Read file list from infile.  If infile is "-", then list is read
	     from stdin.

     -a	     Input contains arbitrary values; just sort	them (do not crawl
	     filesystem).  Input must follow the "size(blank)path" scheme.
	     This option is incompatible with crawling-related options.

OUTPUT CONTROL
     -o	outfile
	     Output partitions'	contents to outfile template. Multiple files
	     will be generated given that template. Each outfile will get par-
	     tition number as a	suffix.	If outfile is "-", then	partitions
	     will be printed to	stdout,	with partition number used as a	prefix
	     (so you can grep partitions you are interested in,	or do whatever
	     you want).

     -e	     When adding directories (see DIRECTORY HANDLING ),	add an ending
	     "/" to each directory entry.

     -v	     Verbose mode (may be specified more than once).

FILESYSTEM CRAWLING CONTROL
     -l	     Follow symbolic links (default: do	not follow).

     -b	     Do	not cross filesystem boundaries	(default: cross).

     -y	pattern
	     Include files or directories matching pattern only	(and discard
	     all other files). This option may be specified several times.  It
	     does not apply when computing size	of directories to be added as
	     leaf entries (the computed	size will then include every file
	     within directory).

     -Y	pattern
	     Same as -y	but case insensitive. This option may not be available
	     on	your platform (at least	FreeBSD	and GNU/Linux support it, So-
	     laris does	not).

     -x	pattern
	     Exclude files or directories matching pattern.  This option can
	     be	used in	conjunction with -y and	-Y.  In	this case, exclusion
	     is	performed after. This option may be specified several times.
	     It	does not apply when computing size of directories to be	added
	     as	leaf entries (the computed size	will then include every	file
	     within directory).

     -X	pattern
	     Same as -x	but case insensitive. This option may not be available
	     on	your platform (at least	FreeBSD	and GNU/Linux support it, So-
	     laris does	not).

DIRECTORY HANDLING
     -z	     Pack empty	directories. By	default, fpart will pack files only
	     (except when using	the -d or -D options). This option can be use-
	     ful for tools such	as rsync(1) to be able to recreate a full file
	     tree when used with fpart (e.g. using rsync's --files-from	op-
	     tion). See	the -Z option to also pack un-readable directories.

     -Z	     Implies -z.  Treat	un-readable directories	as empty, causing them
	     to	be packed anyway.

     -d	depth
	     After a certain depth, pack directories instead of	files (direc-
	     tories themselves will be added to	partitions, instead of their
	     content).

     -D	     Implies -z.  Pack leaf directories: if a directory	contains files
	     only, it will be packed as	a single entry.

LIVE MODE
     -L	     Live mode (default: disabled). When using this mode, partitions
	     will be generated while crawling filesystem. This option saves
	     time and memory, but does not give	partition 0 a special meaning
	     (see option -s ). As a consequence, it can	generate partitions
	     larger than the size specified with option	-s.  This option can
	     be	used in	conjunction with options -f and	-s, but	not with op-
	     tion -n.

     -w	cmd  When using	live mode, execute cmd when starting a new partition
	     (before having opened next	output file, if	any).  cmd is run in a
	     specific environment that provides	several	variables describing
	     the state of the program: FPART_HOOKTYPE ("pre-part" or "post-
	     part"), FPART_PARTFILENAME	(current partition's output file
	     name), FPART_PARTNUMBER (current partition	number),
	     FPART_PARTSIZE (current partition size), FPART_PARTNUMFILES (num-
	     ber of files in current partition), FPART_PID (PID	of fpart).
	     Note that variables may or	may not	be defined, depending of re-
	     quested options and current partition's state when	the hook is
	     triggered.	 Also, note that hooks are executed in a synchronous
	     way while crawling	filesystem, so 1) avoid	executing commands
	     that take a long time to return as	it slows down filesystem
	     crawling and 2) do	not presume cwd	(PWD) is the one fpart has
	     been started in, as it is regularly changed to speed up crawling
	     (use abolute paths	within hooks).

     -W	cmd  Same as -w, but executes cmd when finishing a partition (after
	     having closed last	output file, if	any).

SIZE HANDLING
     -p	num  Preload each partition with num bytes.

     -q	num  Overload each file	size with num bytes.

     -r	num  Round each	file size up to	next num bytes multiple. This option
	     can be used in conjunction	with overloading, which	is done	*be-
	     fore* rounding.

EXAMPLES
     Here are some examples:

     fpart -n 3	-o var-parts /var
	     Produce 3 partitions, with	(hopefully) the	same size and number
	     of	files.	Three files: var-parts.0, var-parts.1 and var-parts.2
	     are generated as output.

     fpart -s 4724464025 -o music-parts	/path/to/music ./*.mp3
	     Produce partitions	of 4.4 GB, containing music files from
	     /path/to/music as well as MP3 files from current directory; with
	     such a partition size, each partition content will	be ready to be
	     burnt to a	DVD. Files music-parts.0 to music-parts.n, are gener-
	     ated as output.

     find /usr ! -type d | fpart -f 10000 -i - /home | grep '^0:'
	     Produce partitions	containing 10000 files each by examining /usr
	     first and then /home and display only partition 0 on stdout.

     du	* | fpart -n 2 -a
	     Produce two partitions by using du(1) output. Fpart will not ex-
	     amine the file system but instead use arbitrary values printed by
	     du(1) and sort them.

SEE ALSO
     du(1), find(1), fpsync(1),	grep(1), rsync(1)

AUTHOR,	AVAILABILITY
     Fpart has been written by Ganael LAPLANCHE	and is available under the BSD
     license on	http://contribs.martymac.org

BUGS
     No	bug known (yet).

BSD			       November	18, 2011			   BSD

NAME | SYNOPSIS | DESCRIPTION | GENERAL OPTIONS | PARTITION CONTROL | INPUT CONTROL | OUTPUT CONTROL | FILESYSTEM CRAWLING CONTROL | DIRECTORY HANDLING | LIVE MODE | SIZE HANDLING | EXAMPLES | SEE ALSO | AUTHOR, AVAILABILITY | BUGS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=fpart&sektion=1&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help