mre / Fcat
Licence: other
A 3x faster implementation of cat, using splice
Stars: ✭ 196
Programming Languages
rust
11053 projects
Projects that are alternatives of or similar to Fcat
colocat
Fegeya Colocat, Colorized 'cat' implementation. Written in C++17.
Stars: ✭ 14 (-92.86%)
Mutual labels: cat, unix
Epoch Flip Clock Screensaver
Unix time (epoch) flip clock macOS screensaver
Stars: ✭ 163 (-16.84%)
Mutual labels: unix
Azpainter
Full color painting software for Unix-like systems for illustration drawing. This is un-official little fixed repository for package maintainers of image editor AzPainter (based on "mlib" toolkit). Official repository - http://azsky2.html.xdomain.jp/arc/download.html
Stars: ✭ 179 (-8.67%)
Mutual labels: unix
Cistern
A terminal UI for Unix to monitor Continuous Integration pipelines from the command line. Current integrations include GitLab, Azure DevOps, Travis CI, AppVeyor and CircleCI.
Stars: ✭ 161 (-17.86%)
Mutual labels: unix
Shadowsocksr Native
翻墙 从容穿越党国敏感日 ShadowsocksR (SSR) native implementation for all platforms, GFW terminator
Stars: ✭ 2,328 (+1087.76%)
Mutual labels: unix
Xo
Command line utility that composes regular expression matches.
Stars: ✭ 184 (-6.12%)
Mutual labels: unix
Purritobin
ultra fast, minimalistic, encrypted command line paste-bin
Stars: ✭ 171 (-12.76%)
Mutual labels: unix
Snapstub
Copy API endpoints to your fs and run a local server using them
Stars: ✭ 193 (-1.53%)
Mutual labels: unix
Zap
An asynchronous runtime with a focus on performance and resource efficiency.
Stars: ✭ 162 (-17.35%)
Mutual labels: unix
😼 fcat
fcat
, short for fastcat, is a cat
implementation in Rust using Linux's splice
syscall.
With that little trick, it's more than three times as fast as the system cat
in our benchmarks.
Read the announcement here.
cat myfile | pv -r > /dev/null
[1.90GiB/s]
fcat myfile | pv -r > /dev/null
[5.90GiB/s]
Installation
Note: Only works on Linux.
(But you can send me a pull request for other operating systems.)
cargo install fcat
Usage
fcat file1 file2 file3
Project goals
- Be the fastest cat in town.
- Be a drop-in replacement for (POSIX) cat.
Non-goals
- Provide any additional functionality other than what
cat
provides.
If you're looking for a more beautiful cat, check out bat.
Known issues
If you run fcat /dev/zero >> myfile
, it will fail with exit code EINVAL
because, according to the splice manpage: "The target file is opened in append mode."
Trivia
- You probably won't ever need this, but it's a fun little experiment.
Still, I wonder why this is not part of e.g. GNU cat... - What I like the most about the project is the logo.
License
fcat is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].