| DETOX(1) | General Commands Manual | DETOX(1) | 
NAME¶
detox — clean up
    filenames
SYNOPSIS¶
detox | 
    [-f configfile]
      [-n | --dry-run]
      [-r] [-s
      sequence] [--special]
      [-v] file ... | 
  
detox | 
    [-L] [-f
      configfile] [-v] | 
  
detox | 
    [-h | --help] | 
  
detox | 
    [-V] | 
  
DESCRIPTION¶
The detox utility renames files to make
    them easier to work with under Unix and Unix-like operating systems. It
    replaces characters that make it hard to type out a filename with dashes and
    underscores. It also provides transliteration-based filters, converting ISO
    8859-1 or UTF-8 to ASCII, in part or in whole. An additional filter
    unescapes CGI-escaped filenames.
Sequences¶
detox is driven by a configurable series
    of filters, called a sequence. Sequences are covered in more detail in
    detoxrc(5) and are discoverable with the
    -L option. The default sequence will run the
    safe and wipeup filters. Other
    examples of pre-configured sequences are iso8859_1 and
    utf_8, which both provide transliteration to ASCII and
    then finish with the safe and
    wipeup filters.
Options¶
-fconfigfile- Use configfile instead of the default configuration files for loading translation sequences. No other config file will be parsed.
 -h,--help- Display helpful information.
 --inline- Run in inline mode. See inline-detox(1) for more details.
 -L- List the currently available sequences. When paired with
      
-vthis option shows what filters are used in each sequence and any properties applied to the filters. -n,--dry-run- Doesn't actually change anything. This implies the
      
-voption. -r- Recurse into subdirectories. Any file or directory that starts with a period, such as .git/ or .cache/, will be ignored during recursion unless specified on the command line. Also, any file or directory specified in the ignore section of the config file will be ignored during recursion.
 -ssequence- Use sequence instead of
      
default. --special- Works on special files (including links). Normally
      
detoxignores these files.detoxwill not recurse into symlinks that point at directories. -v- Be verbose about which files are being renamed.
 -V- Show the current version of 
detox. 
FILES¶
- /etc/detoxrc
 - The system-wide detoxrc file.
 - ~/.detoxrc
 - A user's personal detoxrc. Normally it extends the system-wide
      detoxrc, unless 
-fhas been specified, in which case, it is ignored. - /usr/share/detox/cp1252.tbl
 - The provided CP-1252 transliteration table.
 - /usr/share/detox/iso8859_1.tbl
 - The provided ISO 8859-1 transliteration table.
 - /usr/share/detox/safe.tbl
 - The provided safe character translation table.
 - /usr/share/detox/unicode.tbl
 - The provided Unicode transliteration table, used by the UTF-8 filter.
 - /usr/share/detox/unidecode.tbl
 - An additional Unicode tranlsiteration table, based on Text::Unidecode(3pm).
 
EXAMPLES¶
detox-slower-r-v-n/tmp/new_files- Will run the sequence lower recursively, listing any changes, without changing anything, on the files of /tmp/new_files.
 detox-fmy_detoxrc-L-v- Will list the sequences within my_detoxrc, showing their filters and options.
 
SEE ALSO¶
inline-detox(1), Text::Unidecode(3pm), detox.tbl(5), detoxrc(5), ascii(7), iso_8859-1(7), unicode(7), utf-8(7)
HISTORY¶
detox was originally designed to clean up
    files that I had received from friends which had been created using other
    operating systems. It's trivial to create a filename with spaces,
    parenthesis, brackets, and ampersands under some operating systems. These
    have special meaning within FreeBSD and Linux, and
    cause problems when you go to access them. I created
    detox to clean up these files.
Version 2.0 stepped back from transliteration out of the box, instead focusing on ease of use. The primary motivations for this were user-provided feedback, and the fact that many modern Unix-like OSs use UTF-8 as their primary character set. Transliterating from UTF-8 to ASCII in this scenario is lossy and pointless.
AUTHORS¶
detox was written by Doug
    Harple.
CAVEATS¶
If, after the translation of a filename is finished, a file
    already exists with that same name, detox will not
    rename the file.
| February 24, 2021 | Debian |