• Latest
  • Trending
  • All
find Command Generator: Build Linux find Commands Visually - cover image

find Command Generator: Build Linux find Commands Visually

June 14, 2026
ssh command cheatsheet

SSH Command Cheatsheet: Connect, Keys, scp, Tunnels (2026)

June 16, 2026
chmod-chown-cheatsheet

chmod and chown Cheatsheet: Linux Permissions, Decoded (2026)

June 16, 2026
systemctl-journalctl-cheatsheet

systemctl + journalctl Cheatsheet: Services and Logs (2026)

June 16, 2026
grep-cheatsheet

The grep Cheatsheet: Search a File, Search a Tree (2026)

June 16, 2026
rsync-cheatsheet

The rsync Cheatsheet: Mirror, Sync, Copy Over SSH (2026)

June 16, 2026
curl-cheatsheet

curl Cheatsheet: Download Files and Test APIs (2026)

June 16, 2026
iptables-vs-nftables-cheatsheet cheatsheet

iptables vs nftables: Linux Firewall Cheatsheet, Side by Side

June 16, 2026
nmcli-cheatsheet cheatsheet

nmcli Cheatsheet: Wi-Fi and Network Connections From the Linux Terminal

June 16, 2026
powershell-networking-cheatsheet cheatsheet

PowerShell Networking Cheatsheet: Test-NetConnection, IP, DNS (2026)

June 16, 2026
tar command cheatsheet

The tar Command Cheatsheet: Create, Extract, Stop Guessing (2026)

June 16, 2026
Linux find command cheatsheet

The find Command Cheatsheet: Every Recipe You Actually Use (2026)

June 15, 2026
Linux networking commands cheatsheet, ip and ss

Linux Networking Commands in 2026: the ip and ss Cheatsheet

June 15, 2026
  • Online Tools
  • Network Tools
  • Developer Tools
  • Security Tools
Tuesday, June 16, 2026
  • Login
People Are Geek
  • Online Tools
  • Network Tools
  • Developer Tools
  • Security Tools
No Result
View All Result
People Are Geek
No Result
View All Result
Home Developer Tools

find Command Generator: Build Linux find Commands Visually

by People Are Geek
June 14, 2026
in Developer Tools, Online Tools
0
find Command Generator: Build Linux find Commands Visually - cover image
0
SHARES
5
VIEWS
Share on FacebookShare on Twitter

find command generator

Under pressure I blank on the exact find syntax. Every time. So I built this to skip the man page. You tell it where to look, what name to match, the type, maybe a size or age cutoff. Then what to do with whatever it catches. The command rewrites itself as you fiddle, each flag gets a one-line gloss, and the second you reach for something that bites back like -delete, a red warning lights up. None of it leaves your browser.

$
Recommended dev gearWe may earn a commission, at no extra cost to you.
Mechanical KeyboardCheck price on Amazon →Usb C Docking StationCheck price on Amazon →Portable MonitorCheck price on Amazon →Clean Code BookCheck price on Amazon →

What this find command generator does

find crawls down a directory tree, checks each entry against the rules you hand it, then does something with whatever matches. I’d argue it’s the most useful command on the box, at least for tracking down files by name or size or age and acting on each hit. Here’s what trips everyone up. It isn’t flag-based the way most tools are. It’s an expression, read left to right, action bolted on the end. So you fill in dropdowns and the tool assembles that expression in the right order.

Take find . -type f -name "*.log" -mtime +30 -delete. Read it out loud. Start in this directory, and for every regular file ending in .log that nobody’s touched in over 30 days, delete it. Everything before that last word is a test. -delete is the action. And because one pass can wipe or run a command across thousands of files, you don’t get to be sloppy with the expression.

How find criteria combine

  • Path goes first. It says where to start digging. I lean on . for wherever I’m standing, or an absolute path like /var/log when I really want to be sure.
  • -maxdepth N caps how far down it recurses. It’s a global option, which means it has to sit before the tests or GNU find gets grumpy about it.
  • -name / -iname match the filename against a shell glob. Quote the pattern. Always. Skip the quotes and the shell expands it before find ever sees it, and then you’re stuck wondering why nothing matches.
  • -type narrows things to plain files (f), directories (d) or symlinks (l).
  • -size wants a + for bigger or - for smaller, nothing for an exact match, plus a unit (k, M, G, or c for raw bytes).
  • -mtime / -mmin filter by how long ago a file changed, in days or minutes. +7 means older than seven, -1 means within the last one. The signs still trip me up, so the tool spells it back to you.

Actions: print, delete and exec

Left alone, find just prints what it matched. That’s how you should start. It’s a free preview of what your tests actually select, no harm done. Swap in -ls and you get a detailed ls -l style line per hit. Then there’s -delete, which removes matches with no undo, so I’m begging you: run the exact same command without it first and read the list. And -exec runs whatever command you want on each match, with {} standing in for the file path. End it with + instead of \; and find crams as many files as it can into one call. Way faster than spawning a fresh process per file.

Safety: preview before you delete

One thing from this page, if that’s all you keep: preview first. Run the whole command with plain print, actually read the list it spits out, and only then bolt on -delete or -exec rm. I’ve watched a single typo’d path chew through a lot more than anyone meant to. Bad afternoon. The red warning here fires the second you pick a destructive action, because -delete wandering into the wrong directory is a genuinely classic way to lose data, and I’d rather nag you than let it happen.

Privacy and how this tool runs

It’s all just JavaScript running in your browser. Your paths and patterns never touch my server, and I’m not logging a thing. Once the page has loaded it even works with the wifi off, if you ever want proof.

Frequently asked questions

How do I find files by name in Linux?

find . -type f -name "*.txt" gets you every regular file ending in .txt below where you’re sitting. Don’t care about case? Swap -name for -iname. And quote that pattern. Skip the quotes and the shell expands the glob first, then hands find something it never expected.

How do I find large files?

Disk fills up, this is my first move: find / -type f -size +100M turns up everything over 100 megabytes, anywhere on the box. Bump the unit to G if you’re hunting gigabyte monsters. I usually tack on -exec du -h {} + and pipe to sort so the actual sizes line up somewhere I can read them.

How do I find and delete files older than 30 days?

find /path -type f -mtime +30 -delete does it. But run it once without -delete first, look hard at what comes back, and only then put the flag on. I will not stop repeating that. If this is ongoing log cleanup, let logrotate own it. find is the right tool for the one-off “clear this out today” jobs.

What is the difference between -exec {} \; and {} +?

Both fire a command at your matches, just differently. \; runs it once per file. Dead simple, and painfully slow once you’ve got a few thousand of them. + stuffs as many files as it can into a single invocation, which is dramatically faster and the one I default to whenever the command can swallow multiple arguments at once.

Why must -maxdepth come before other tests?

Because -maxdepth isn’t a per-file test at all. It changes how the whole walk behaves. Stick it after a test and GNU find will actually warn you, since the position makes it look like it only kicks in from that point on, which it doesn’t. Safe spot is right after the path. That’s where the tool drops it for you, no thinking required.

Should I use find or fd?

Honestly? Both. fd is the newer one, faster and friendlier, cleaner syntax with colour output, and genuinely a joy to poke around with by hand. But find is everywhere. It’s already on every Unix box you’ll ever SSH into, and it scripts without anyone installing a thing. So I learn find for portability and the scripts that just have to work. fd I keep around for live digging at the terminal, when it happens to be there.

Sources & further reading

  • GNU Findutils manual, find
  • man7.org, find(1) man page

Related tools and resources

Same fill-in-the-blanks idea, pointed at the other commands I kept fumbling.

tar Command Generator chmod Calculator Common Ports List Cron Expression Generator Firewall Rule Helper
ShareTweetPin
People Are Geek

People Are Geek

I'm Stephane, a network and systems engineer with over 15 years of hands-on experience on production infrastructure, virtualization (ESXi, Proxmox), networking, and self-hosting. Earlier in my career I built and ran a Linux resource site that became a well-known reference for sysadmins. Today I focus on cybersecurity, and I also work as a technical trainer, teaching networking and security to people who do it for a living. Everything on People Are Geek comes from real-world practice, not theory. I build every tool on this site myself, and I write about what I've actually deployed, broken, and fixed. If it's here, I've used it.

People Are Geek

Copyright © 2017 JNews.

Navigate Site

  • About PeopleAreGeek
  • Affiliate Disclosure
  • All Tools and Articles
  • Contact
  • Cookie Policy
  • Hyper-V Hub: Tools, Error Fixes and Lab Guides
  • Linux Hub: Cross-Distro Reference, Articles, Tools
  • Privacy Policy
  • Sample Page
  • Terms of Service
  • VMware vSphere & ESXi Hub: Tools, Error Fixes and Guides

Follow Us

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In
No Result
View All Result
  • Online Tools
  • Network Tools
  • Developer Tools
  • Security Tools

Copyright © 2017 JNews.