ports-monitor
v1.0.2
Published
Find open ports, filter results, and kill processes by port on Linux, macOS, and Windows
Maintainers
Readme
ports-monitor
ports-monitor is a cross-platform Node.js CLI to find open ports, filter them fast, and stop the owning process.
- Check open ports on Linux, macOS, and Windows
- Filter by port, PID, protocol, process, address, or search query
- Kill a process by port (or by PID) with graceful-first behavior
- Use either script-friendly flags or an interactive terminal view
Supports Linux, macOS, and Windows.
Why ports-monitor
- Works across Linux, macOS, and Windows with one command
- Fast for day-to-day dev tasks like "what is using port 3000?"
- Safe stop flow: graceful first, then force only when needed
- Useful for local debugging, CI agents, and remote servers
Install
From npm:
npm install -g ports-monitorOr from this repo:
npm linkThen run:
ports-monitor --helpShortcut alias:
pm --helpLocal Development
From this repo:
npm install
npm run checkUsage
List ports:
ports-monitor list
ports-monitor list --process node
ports-monitor list --port 3000
ports-monitor list --protocol tcp --state LISTEN
ports-monitor list --jsonStop by port or PID:
ports-monitor stop --port 3000 --yes
ports-monitor stop --pid 1234 --yes
ports-monitor stop --pid 1234 --force --yes
ports-monitor stop --port 3000 --dry-run --yes --jsonInteractive mode:
ports-monitor interactiveCommon Tasks
Find what process is using a specific port:
ports-monitor list --port 3000Kill whatever is running on a specific port:
ports-monitor stop --port 3000 --yesKill by PID:
ports-monitor stop --pid 1234 --yesPreview stop targets without killing:
ports-monitor stop --port 3000 --dry-run --yes --jsonCommands
list
ports-monitor list [--port N] [--pid N] [--process NAME] [--protocol tcp|udp] [--state STATE] [--address TEXT] [--query TEXT] [--json]
stop
ports-monitor stop [--port N | --pid N] [--protocol tcp|udp] [--force] [--dry-run] [--yes] [--json]
Default stop behavior is graceful first, then force kill if needed.
interactive
Simple terminal loop with live refresh, free-text filtering, and stop actions.
Notes
- Some processes may require elevated privileges to inspect or stop.
- On Linux, the CLI uses
ssfirst and falls back tonetstat. - On macOS, the CLI uses
lsof. - On Windows, the CLI uses
netstatandtasklist.
Links
- npm: https://www.npmjs.com/package/ports-monitor
- GitHub: https://github.com/mrbeandev/ports-monitor
- Website: https://mrbean.dev
