{"id":13475619,"url":"https://github.com/kbrgl/fu","last_synced_at":"2025-04-19T20:10:30.962Z","repository":{"id":57570341,"uuid":"82901376","full_name":"kbrgl/fu","owner":"kbrgl","description":"Unix's Find, Unleashed.","archived":false,"fork":false,"pushed_at":"2017-09-26T16:08:31.000Z","size":21,"stargazers_count":33,"open_issues_count":1,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-29T12:46:49.537Z","etag":null,"topics":["cli","command-line","command-line-tool","filesystem","fs","go","golang","regex","search","tool"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kbrgl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-02-23T08:05:15.000Z","updated_at":"2023-01-30T07:22:05.000Z","dependencies_parsed_at":"2022-09-10T20:22:04.316Z","dependency_job_id":null,"html_url":"https://github.com/kbrgl/fu","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbrgl%2Ffu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbrgl%2Ffu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbrgl%2Ffu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbrgl%2Ffu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kbrgl","download_url":"https://codeload.github.com/kbrgl/fu/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249246232,"owners_count":21237012,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","command-line","command-line-tool","filesystem","fs","go","golang","regex","search","tool"],"created_at":"2024-07-31T16:01:21.939Z","updated_at":"2025-04-16T13:33:49.381Z","avatar_url":"https://github.com/kbrgl.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"```\n______       ____\n\\ \\ \\ \\     / __/_  __\n \\ \\ \\ \\   / /_/ / / /\n / / / /  / __/ /_/ /\n/_/_/_/  /_/  \\__,_/\n\n```\n\n# Find Unleashed\nFu is an intuitive alternative to the Unix command find. It mainly searches\nfilenames, but some meta-information like file mode is supported as well.\nIt can walk directories in parallel, resulting in substantial speedups for\ndirectories with thousands of files.\n\n## Index\n* [Installation](#installation)\n    + [Platform support](#platform-support)\n* [Usage](#usage)\n    + [Examples](#examples)\n* [TODO](#todo)\n* [Contributing](#contributing)\n\n## Installation\n### Homebrew\n```\nbrew tap kbrgl/formulas\nbrew install fu\n```\nOr, if you want the latest version from git, run `brew install` with the `--HEAD`\nflag. This is equivalent to running `go get`, except you'll be able to upgrade\nthrough Homebrew.\n\n### go get\nIf you have Go installed, run\n```sh\ngo get -u github.com/kbrgl/fu\n```\nIf you don't, download the latest release and put it somewhere on your $PATH.\n\n### Platform support\nUnix-based systems (macOS, Linux distros, \\*BSDs, etc.) are supported.\nSome features (like Unix permission filters) might not work on Windows.\n\n## Usage\n```sh\nusage: fu [\u003cflags\u003e] \u003cquery\u003e [\u003cpaths\u003e...]\n\nFlags:\n  -h, --help             Show context-sensitive help (also try --help-long and --help-man).\n  -f, --fuzzy            Use fuzzy search\n  -r, --regexp           Use regexp-based search\n  -a, --suffix           Use suffix-based search (short flag 'a' is short for 'after')\n  -b, --prefix           Use prefix-based search (short flag 'b' is short for 'before')\n  -s, --substring        Use substring-based search allowing the query to be at any position in the filename\n  -d, --dir              Show only directories\n  -m, --perm=PERM        Filter by Unix permissions\n  -c, --parallel         Walk directories in parallel, may result in substantial speedups for directories with many files\n  -o, --older=OLDER      Filter by age (modification time)\n  -y, --younger=YOUNGER  Filter by age (modification time)\n  -e, --exclude          Excludes files matching the filters\n  -v, --version          Show application version.\n\nArgs:\n  \u003cquery\u003e    Search query\n  [\u003cpaths\u003e]  Paths to search\n```\nPath is current working directory by default, and the program uses exact\nfilename matching by default.\n\n### Examples\nThe general usage pattern of fu is:\n```sh\nfu [\u003csearch modifiers\u003e...] \u003cquery\u003e [\u003cpaths\u003e...]\n```\nWhere the search modifiers may be any of the options specified in the usage.\n\nThe only thing that's actually necessary is the query. By default,\n```\nfu \u003cquery\u003e\n```\nWill search under the current directory for files with the name \u003cquery\u003e.\n\n#### Find all dotfiles in the home folder\n```sh\nfu -b . ~\n```\n#### Find all Python scripts in current dir\n```sh\nfu -a .py\n```\n#### Find files in current dir whose names start and end with 'a'\n```\nfu -r \"^a.*a\\$\"\n```\n#### Fuzzy matching\n```\nfu -f pkg\n```\n\nFuzzy search is the algorithm that Sublime Text and Atom use in their\nCommand Palettes. For an explanation, check out\n[this Wikipedia article](https://en.wikipedia.org/wiki/Approximate_string_matching).\n\n## TODO\n- [ ] Write tests\n- [ ] Beautify TTY output\n- [x] Remove -c flag and automatically switch between powerwalk and filepath Walk\n  functions\n\nPRs for these would be appreciated.\n\n## Contributing\nContributions are welcome. Just be sure to run `go fmt` and `go vet` on your\ncode.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkbrgl%2Ffu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkbrgl%2Ffu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkbrgl%2Ffu/lists"}