Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 36 million developers.Sign up
-X <cmd>option for batch execution of commands, see #360 (@kimsnj).
This allows you to do things like:
fd … -X vim # open all search results in vim (or any other editor) fd … -X ls -l # view detailed stats about the search results with 'ls' fd -e svg -X inkscape # open all SVG files in Inkscape
- Support for 24-bit color codes (when specified via
LS_COLORS) as well as
different font styles (bold, italic, underline).
- A few performance improvements, in particular when printing lots of colorized
results to the console, see #370
LS_COLORShandling has been "outsourced" to a separate crate (https://github.com/sharkdp/lscolors) that is now being used by other tools as well: fselect, lsd. For details, see #363.
fdwill be available in Ubuntu Disco DIngo (19.04), see #373 (@sylvestre)
- This release should come with a static ARM binary (
arm-unknown-linux-musleabihf), see #320 (@duncanfinney)
- Various documentation improvements, see #389
- Added support for filtering by file modification time by adding two new options
--changed-within <..>. For more details, see the
--helptext, the man page, the relevant issue #165 and the PR #339 (@kimsnj)
--show-errorsoption to enable the display of filesystem error messages such as "permission denied", see #311 (@psinghal20 and @majecty)
--maxdepthas a (hidden) alias for
--max-depth, see #323 (@mqudsi)
--search-pathoption which can be supplied to replace the positional
pathargument at any position.
- Loosen strict handling of missing
--ignore-file, see #280 (@psinghal20)
.ignorefiles, see #156.
fdcould previously get stuck when run from the root directory in the
presence of zombie processes. This curious bug has been fixed in Rust 1.29 and higher. For more details, see #288, rust-lang/rust#50619 and the fix
fdhas officially landed in Debian! See #345 for details. Thanks goes to @sylvestre, @paride and possibly others I don't know about.
- Added Chinese translation of README (@chinanf-boy)
A special thanks goes to @joshleeb for his amazing improvements throughout
the code base (new tests, refactoring work and various other things)!
--sizefilter option, see #276 (@stevepentland, @JonathanxD and @alexmaco)
-t e) to search for empty files and/or directories, see #273
- With the new version,
.gitignorefiles will only be respected in Git repositories, not outside.
- A few performance improvements for
--typesearches, see 641976c and 50a2bab
-t x) to search for executable files only, see #246 (@PramodBisht)
- Added support for
.fdignorefiles, see #156 and #241.
--ignore-fileoption to add custom ignore files, see #156.
--fixed-stringson invalid regular expressions, see #234 (@PramodBisht)
- Detect when user supplied path instead of pattern, see #235.
.rgignorefiles are not parsed anymore. Use
or add custom files via
- Updated to
- Properly normalize absolute paths, see #268
- Invalid utf8 filenames displayed when
-eis used, see #250
--typeis used, fifos/sockets/etc. are always shown, see #260
- The Arch Linux package is now simply called
- There is now a
fdebuild for Gentoo Linux.
- There is a
- There is a
- There is a Fedora
- The Arch Linux package is now simply called
> fd -e tar.gz
--literaloption that treats the pattern as a literal string instead of a regular expression, see #157
> fd -F 'file(1).txt'
Fixed wrong file owner for files in deb package, see #213
For example, it's possible to search for C++ source or header files:
> fd -e cpp -e c -e cxx -e h pattern
- The size of the output buffer (for sorting search results) is now limited to 1000 entries. This
improves the search speed significantly if there are a lot of results, see #191 (@sharkdp).
- Fix a bug where long-running searches could not be killed via Ctrl-C, see #210 (@Doxterpepper)
- fd's exit codes are now in accordance with Unix standards, see #201 (@Doxterpepper)
- Support for multiple search paths, see #166 (@Doxterpepper)
--no-ignore-vcsoption to disable
.gitignoreand other VCS ignore files,
.ignorefiles - see #156 (@ptzz).
- Handle terminal signals, see #128 (@Doxterpepper)
- Fixed hang on
--execwhen user input was required, see #178 and #193 (@reima)
- Debian packages are now created via Travis CI and should be available for this and all
future releases (@tmccombs).
- fd is now available on Void Linux (@maxice8)
- The minimum required Rust version is now 1.20
@Doxterpepper deserves a special mention for his great work that is included in this release and
for the support in ticket discussions and concerning Travis CI fixes. Thank you very much!
Thanks also go out to @tmccombs for the work on Debian packages and for reviewing a lot of pull requests!
-xoption does not spawn an intermediate shell anymore. This improves the
performance of parallel command execution and fixes a whole class of (present and potentially
future) problems with shell escaping. The drawback is that shell commands cannot directly be
--exec. See #155 for the full discussion. These changes have been implemented by
--execdoes not escape cmd.exe metacharacters on Windows (see #155, as above).
- Added new
-xoption for parallel command execution (@mmstick, see #84 and #116). See the corresponding README section for an introduction.
- Auto-disable color output on unsupported Windows shells like
cmd.exe(@iology, see #129)
- Added the
-Xoption to suppress certain files/directories in the search results
- Added ripgrep aliases
--no-ignore --hidden, respectively
(@unsignedint, see #92)
--ignore-case(@iology, see #95)
- Made smart case really smart (@reima, see #103)
- Added RedoxOS support (@goyox86, see #131)
- The dot
.can now match newlines in file names (@iology, see #111)
- The short
--typeargument for symlinks has been changed from
l(@jcpetkovich, see #83)
- Various improvements in root-path and symlink handling (@iology, see #82, #107, and #113)
- Fixed absolute path handling on Windows (@reima, #93)
- Fixed: current directory not included when using relative path (see #81)
--typebehavior for unknown file types (@iology, see #150)
- Some fixes around
--exec(@iology, see #142)
- Major updates and bugfixes to our continuous integration and deployment tooling on Travis
(@matematikaadit, see #149, #145, #133)
- Code style improvements & automatic style checking via
rustfmton Travis (@Detegr, see #99)
- Added a man page (@pickfire, see #77)
- fd has been relicensed under the dual license MIT/Apache-2.0 (@Detegr, see #105)
- Major refactorings and code improvements (Big thanks to @gsquire, @reima, @iology)
- First version of
- There is now a Nix package (@mehandes)
- fd is now in the official Arch Linux repos (@cassava)
- Improved tooling around shell completion files (@ImbaKnugel, see #124)
- Updated tutorial in the
- The minimum required version of Rust has been bumped to 1.19.
A lot of things have happened since the last release and I'd like to thank all contributors for their great support. I'd also like to thank those that have contributed by reporting bugs and by posting feature requests.
I'd also like to take this chance to say a special Thank You to a few people that have stood out in one way or another: To @iology, for contributing a multitude of bugfixes, improvements and new features. To @reima and @Detegr for their continuing great support. To @mmstick, for implementing the most advanced new feature of fd. And to @matematikaadit for the CI/tooling upgrades.
- Added filtering by file extension, for example
fd -e txt, see #56 (@reima)
- Add option to force colored output:
--color always, see #49 (@Detegr)
- Generate Shell completions for Bash, ZSH, Fish and Powershell, see #64 (@ImbaKnugel)
- Better & extended
--helptext (@abaez and @Detegr)
- Proper Windows support, see #70