Skip to content

v1.0.0 · whyrun first stable release

Latest

Choose a tag to compare

@gitstq gitstq released this 31 Aug 02:54

🔍 whyrun v1.0.0 — first stable release

Trace a port / PID / process name / open file back to what started it — one static binary, zero dependencies, zero telemetry.

✨ Highlights

  • whyrun port <PORT> — resolve the process behind a listening TCP/UDP port (IPv4 & IPv6)
  • whyrun pid <PID> — executable, full command line, cwd, user, state, start time, sockets, container ID
  • whyrun name <REGEX> — fuzzy process matching across name / exe / cmdline
  • whyrun file <PATH> — find every process holding a file open (exact /proc/PID/fd matching on Linux)
  • whyrun tree [PID] — whole-machine or subtree process tree with --depth
  • Full parent launch chain ("launched by 1 systemd → … → target") for every match
  • Linux reads /proc directly — no lsof/netstat required; macOS/BSD use ps+lsof; Windows uses CIM + netstat -ano
  • Docker / containerd / Kubernetes container ID detection via cgroup
  • --json on every command + stable exit codes (0 found / 1 not found / 2 usage / 3 internal)
  • Pure Go standard library only, statically linked, ~2 MB binary

📦 Downloads

Choose the archive matching your OS/CPU; SHA256SUMS.txt covers every asset.

Platform Asset
Linux x86_64 whyrun_1.0.0_linux_amd64.tar.gz
Linux ARM64 whyrun_1.0.0_linux_arm64.tar.gz
macOS Intel whyrun_1.0.0_darwin_amd64.tar.gz
macOS Apple Silicon whyrun_1.0.0_darwin_arm64.tar.gz
Windows x64 whyrun_1.0.0_windows_amd64.zip
Windows ARM64 whyrun_1.0.0_windows_arm64.zip

✅ Verification

sha256sum -c SHA256SUMS.txt

📖 Docs

Multilingual READMEs: 简体中文 · 繁體中文 · English · 日本語. See the repository for the full guide.


中文说明

首个稳定版:统一三大平台的端口/进程/文件溯源,一条命令还原「谁占了端口、谁拉起了进程、谁锁了文件」以及完整父进程启动链。Linux 直读 /proc 零外部命令,纯标准库静态二进制,下载解压即用。校验完整性请运行 sha256sum -c SHA256SUMS.txt。

Full Changelog: https://github.com/gitstq/whyrun/commits/v1.0.0