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

FreeBSD Manual Pages

  
 
  

home | help
FDUPES-HELP(7)		Miscellaneous Information Manual	  FDUPES-HELP(7)

NAME
     fdupes-help - fdupes interactive mode reference

INTRODUCTION
     When run interactively (as fdupes --delete), fdupes will show a list of du-
     plicates and prompt the user for further action.

     The  user can tell fdupes which files to keep or delete by tagging them ac-
     cordingly. Once tagged, the user can instruct fdupes to  delete  any  files
     that  have been tagged for deletion. This can be done incrementally, if de-
     sired, successively tagging and deleting a limited number	of  files  at  a
     time until no more duplicates remain to be processed.

     There  are several ways to tag files in fdupes: individually using the cur-
     sor, by providing a list of files to keep, or by selecting files that match
     particular search criteria and tagging those as desired. Each of these  ap-
     proaches is discussed in detail in the sections below.

SCROLLING THE LIST
     The list of duplicates can be scrolled as follows:

     PAGE DOWN
	    Scroll down to the next page.

     PAGE UPScroll up to preceding page.

     SHIFT + DOWN
	    Scroll down by one line. Not supported on some terminals.

     SHIFT + UP
	    Scroll up by one line. Not supported on some terminals.

MOVING THE CURSOR
     The  cursor  tells fdupes which file and/or set of duplicates to act on, as
     described in the next section. The cursor's position can be changed as fol-
     lows:

     DOWN   Advance cursor to the next file on the list.

     UP     Move cursor back to the previous file.

     TAB    Advance cursor to the next set of duplicates.

     BACKSPACE
	    Move cursor back to the previous set.

     F3     Advance cursor to the next selected set, if any.

     F2     Move cursor back to the previous selected set, if any.

     It is also possible to jump directly to a particular set:

     'goto <index>'
	    Move cursor to the top of the set indicated by index.

TAGGING FILES USING THE CURSOR
     Individual files can be tagged using the keys below. These keys all act  on
     the current file, as identified by the cursor.

     SHIFT + RIGHT
	    Tag current file for keeping.

     SHIFT + LEFT
	    Tag current file for deletion.

     '?'    Remove tag from current file.

     Entire  sets  of  files  can  be tagged by providing a list of indices in a
     comma-separated list. Files in the current set whose indices appear on  the
     list  will be tagged for keeping, while any other files in that set will be
     tagged for deletion. As with individual files, the current set  is  identi-
     fied by the cursor.

     As an example, given the following list of duplicates:

	    Set 1 of 5:

	      1 [ ] path/to/file_a
	      2 [ ] path/to/file_b
	      3 [ ] path/to/file_c

     Typing  '1,  3'  at  the  prompt and pressing ENTER will tell fdupes to tag
     file_a and file_c for keeping, and file_b for deletion. The special command
     'all' will tag all files for keeping.

     There is one more command to deal with files in the current set:

     'rg'   Remove tags from all files in current set.

FILE SELECTION COMMANDS
     Another way to tag files is to first select them  according  to  particular
     search  criteria  and  then tell fdupes what to do with them. The following
     commands can be used to select files for tagging:

     'sel <text>'
	    Select any files whose paths contain the given text.

     'selb <text>'
	    Select any files whose paths begin with the given text.

     'sele <text>'
	    Select any files whose paths end with the given text.

     'selm <text>'
	    Select any file whose path matches the given text exactly.

     'selr <expression>'
	    Select any files whose paths match the given regular expression (see
	    below).

     'dsel <text>'
	    Deselect any files whose paths contain the given text.

     'dselb <text>'
	    Deselect any files whose paths begin with the given text.

     'dsele <text>'
	    Deselect any files whose paths end with the given text.

     'dselm <text>'
	    Deselect any file whose path matches the given text exactly.

     'dselr <expression>'
	    Deselect any files whose paths match the  given  regular  expression
	    (see below).

     'csel' Clear all selections.

     'isel' Invert  selections within selected sets. For example, if files 1 and
	    4 in a set of 5 are selected, isel will deselect files 1 and 4,  and
	    select  files  2,  3,  and 5. Immediately repeating the same command
	    will deselect files 2, 3, and 5, and select files 1 and 4, restoring
	    selections to their previous state.

TAGGING SELECTED FILES
     Once some files have been selected using the commands described above,  the
     following commands can be used to tag selected files as desired:

     'ks'   Tag selected files for keeping.

     'ds'   Tag selected files for deletion.

     'rs'   Remove all tags from selected files.

DELETING DUPLICATES
     Once  tagged for deletion, files can be deleted by pressing DELETE or using
     the 'prune' command. Fdupes will delete any files that are tagged for dele-
     tion and delist any sets whose remaining files have been tagged  for  keep-
     ing. For safety, fdupes will refuse to act on sets for which all files have
     been  tagged for deletion. To handle these cases, tag at least one file for
     keeping and run the delete command again.

OTHER COMMANDS
     'exit', 'quit'
	    Exit the program.

     'help' Display this help text.

REGULAR EXPRESSIONS
     A regular expression is a sequence of characters defining a search  pattern
     against which other character sequences can be compared. Strings of charac-
     ters that follow the pattern defined by an expression are said to match the
     expression, whereas strings that break the pattern do not.

     The syntax for regular expressions used by fdupes is known as the Perl Com-
     patible  Regular  Expression  syntax. A detailed description of regular ex-
     pression syntax is beyond the scope of this document. For detailed informa-
     tion the user is encouraged to consult the PCRE2 documentation:

	    https://www.pcre.org/current/doc/html/pcre2syntax.html

     Briefly, here are some examples of regular expressions:

     abc123 Will match any  string  containing	the  sequence  abc123,	such  as
	    abc123, abc123x, xabc123, and xabc123x.

     ^abc123Will  match  any  string  beginning  with abc123, such as abc123 and
	    abc123x, but not xabc123 or xabc123x.  The character '^' has special
	    meaning, telling the program to match only those strings that  begin
	    with the pattern that follows.

     abc123$Will  match  any  string  that  ends with abc123, such as abc123 and
	    xabc123, but not abc123x or xabc123x.  The character '$' has special
	    meaning, telling the program to match only those  strings  that  end
	    with the preceding pattern.

     ^abc123$
	    Will match the string abc123 and no other.

     ab.123 Will match any string containing abc123 as in the first example, but
	    it	will  also match strings containing abz123, ab0123, ab_123, etc.
	    The character '.' has special meaning, acting as a placeholder  that
	    will match any character in that position.

     ^a.*3$ Will  match  any  string beginning with the letter a and ending with
	    the number 3, such as abc123, a3, and a0b1c2d3.  Here the  character
	    '*' tells the program to accept any number of appearances (including
	    none)  for	the  preceding	item  (here,  any character matching the
	    placeholder character '.'). The characters '^' and '$' have the same
	    meaning as in previous examples.

     abc\d+ Will match any string containing the characters abc followed immedi-
	    ately by one or more decimal digits, such as abc123 and abc3210, but
	    not abcd123 or abc 123 (note the space). Here \d  is  a  placeholder
	    for  any decimal digit, while the character '+' tells the program to
	    match one or more appearances of the preceding character  or  place-
	    holder (here, \d).

     \w+\d+ Will  match any string containing one or more "word" characters fol-
	    lowed immediately by one or more decimal digits, such as abc123  and
	    abcd3210, but not abc 123 (note the space). Here \w is a placeholder
	    for  a  "word" character, and \d and '+' have the same meaning as in
	    the preceding example.

     This is just scratching the surface of what can be done  with  regular  ex-
     pressions. Consult the PCRE2 documentation for a complete reference.

SEE ALSO
     The fdupes man page, fdupes(1).

								  FDUPES-HELP(7)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=fdupes-help&sektion=7&manpath=FreeBSD+Ports+15.1.quarterly>

home | help