file-sniffer 1.2.4

Command-line tool to find build artifacts and junk on your computer.
Documentation

file-sniffer

Build Status

If you do a significant amount of programming, you'll probably end up with build artifacts scattered about. sniff is a tool to help you find those artifacts. It's especially useful when you're writing build systems, because you can make sure your clean command gets everything.

Anecdotally, I found around 2GB of junk with this tool.

Installation

Binary install

The easiest way to install for Linux or Windows is to download a binary from the releases page.

Cargo

If your platform doesn't have binaries, get cargo. Then:

 $ cargo install file-sniffer

If you want the absolute latest version:

 $ cargo install --git https://github.com/vmchale/file-sniffer 

Make sure you are on nightly; if in doubt run

rustup run nightly cargo install file-sniffer

Use

Currently, sniff looks for files that either have an extension associated with artifacts or executable files listed in the relevant .gitignore.

Search current directory for directories with build artifacts:

 $ sniff ar

Look in $DIR for build artifacts and sort by size:

 $ sniff ar $DIR --sort

Look for artifacts or directories containing artifacts that occupy more than 1GB of disk space:

 $ sniff ar -t1G

Accessibility

To turn off colorized output:

export CLICOLOR=0

Features

  • find "likely build artifact" directories
    • use .gitignore/path to make decision
  • match speed of gnu utils on traversals
    • faster when finding artifacts
    • faster with excludes
    • faster on small directories
  • colorized output
  • sort results by size

Languages Supported

The intent is to support basically anything, so if your DOC is not on the list, feel free to open a PR or start an issue.

  • Haskell (incl. GHCJS)
  • rust
  • julia
  • python
  • Elm
  • nim
  • Vimscript
  • Idris
  • FORTRAN
  • C

Foreign-language binaries

These still need a bit of work; as of now errors and warnings are still in English. Binaries will be available once things stabilize.

Français:

cargo install file-sniffer --no-default-features --feature francais # crates.io doesn't permit unicode there

Deutsch:

cargo install file-sniffer --no-default-features --feature deutsch