find Command Builder
Build correct find commands visually — path, name glob, type (f/d/l), size, time (mtime/mmin/newer), depth, permissions, owner, actions (print, exec \; / exec +, xargs, delete), boolean AND/OR/NOT with properly-escaped parentheses. Toggle GNU vs BSD/macOS variants. Per-option plain-English explanation, dangerous-action warnings (-delete/-exec rm), -print0/xargs -0 safe pattern, recipe library, history (max 20), shareable URL. 100% client-side — commands are generated, never executed.
About find Command Builder
Build correct find commands visually — path, name glob, type (f/d/l), size, time (mtime/mmin/newer), depth, permissions, owner, actions (print, exec \; / exec +, xargs, delete), boolean AND/OR/NOT with properly-escaped parentheses. Toggle GNU vs BSD/macOS variants. Per-option plain-English explanation, dangerous-action warnings (-delete/-exec rm), -print0/xargs -0 safe pattern, recipe library, history (max 20), shareable URL. 100% client-side — commands are generated, never executed. Everything runs locally in your browser — your data never leaves your device.
How to use
- Enter your input in the tool above.
- Adjust any options to your preference.
- Use the Copy or Download buttons to save the result.
- Everything happens locally — your data never leaves your browser.
FAQ
What's the difference between GNU find and BSD/macOS find?
GNU findutils (Linux) supports -printf for custom output formatting, -regextype for choosing regex engines (emacs, posix-awk, posix-egrep), -delete with implicit depth-first ordering, and -execdir. BSD/macOS find lacks -printf (you pipe to stat or use ls -la), uses posix-basic or posix-extended regex via -E, and has stricter -delete semantics that require the directory to be empty. This builder has a GNU/BSD toggle that switches unavailable features and shows variant-specific notes.
What's the difference between -exec cmd {} \; and -exec cmd {} + ?
\; runs the command once PER matching file (cmd file1; cmd file2; ...). + batches matching files into as few invocations as possible (cmd file1 file2 file3 ...) — much faster, but {} must be the LAST argument before +. The builder picks the right terminator based on your choice and explains the difference. For destructive commands like rm, + can be risky because one bad path passes everything to rm at once.
Why is -delete dangerous and how does the builder help?
find -delete silently removes files matching your predicates. Common mistakes: forgetting -name so EVERYTHING under the path gets deleted, or putting -delete before -name so find evaluates -delete on every entry before filtering. The builder (1) always places predicates BEFORE actions in the generated command, (2) shows a red destructive badge whenever -delete or -exec rm is selected, (3) recommends a -print preview first, and (4) suggests -print0 | xargs -0 rm as the safer xargs pattern for filenames with spaces.
How does -mtime n work? What about +n and -n?
find -mtime n matches files modified EXACTLY n*24h ago (fractional days round down, so -mtime 1 means between 24h and 48h ago). -mtime +n means MORE than n*24h ago (older). -mtime -n means LESS than n*24h ago (newer). For finer granularity use -mmin (minutes). For relative comparison use -newer file (modified after file) or -newermt '2024-01-01' (GNU only, after a date). The builder explains the boundary semantics with each option.
What extra features does this tool have?
(1) Visual predicate composer: name/iname, type (f/d/l/b/c/p), size (+/-N with k/M/G units), time (mtime/mmin, +n/n/-n, -newer), depth (maxdepth/mindepth), perm (octal/symbolic), user/group, empty, paths. (2) Boolean AND/OR/NOT with properly-escaped \( \) groups. (3) Action: print (default), -exec cmd {} \; / {} +, xargs (-print0 | xargs -0), -delete (guarded). (4) GNU vs BSD variant toggle with feature-availability notes. (5) Per-option plain-English explanation. (6) Plain-English command summary. (7) Dangerous-action warnings. (8) -print0/xargs -0 safe-filename pattern. (9) Recipe library (12 common one-liners). (10) Shell-quoting of arguments. (11) Copy command + download. (12) Validation with errors + warnings. (13) localStorage history (max 20). (14) Shareable URL with embedded config. 100% client-side — nothing is executed or uploaded.
Related tools
.bashrc / .zshrc Alias & Config Manager
Build shell aliases, functions, exports, and PATH edits in a visual editor, then export a clean, commented .aliases file sourced from both .bashrc and .zshrc — with shadowing detection against shell builtins and common CLI tools, function suggestions when args are needed, starter packs (git, docker, kubectl, navigation, safety, ls, dev, devops, data science), import of existing rc files, dedupe, history (localStorage), and shareable URL. 100% client-side.
Add / Subtract Date Calculator
Add or subtract years, months, weeks, days, hours, minutes and seconds from a starting date/time. Calendar-day or business-day mode with custom weekend + holiday list. Month-end policy toggle (clamp to last day vs overflow). Repeat/series mode (e.g. every 2 weeks x 10) with CSV export. Shareable URL. 100% client-side.
Age Calculator
Calculate exact age from a birth date in calendar years/months/days (no negative-day bugs) plus totals in months/weeks/days/hours/minutes/seconds. Next-birthday countdown with weekday. Feb-29 birthday policy toggle. Milestones (1,000 days, 10,000 days, 1 billion seconds). Zodiac sign + Chinese zodiac. Age gap comparison. Shareable URL. 100% client-side.