@DTS Engineer Thank you for your detailed explanation, especially the part about the underlying implementation of macOS. I realize that my original use of the word “replace” may have been too strong.
My main concern is not “uutils for the sake of uutils,” nor do I expect macOS to abandon its own underlying implementation. More precisely, what I want to discuss is whether macOS could adopt some common Linux command-line behaviors as a compatibility target for developers.
The underlying implementation can still be Apple’s own, and it can still use macOS’s own filesystem interfaces and optimized paths. What I am really concerned about is the user-visible behavior layer—for example command-line options, argument formats, output formats, and the portability of common scripts.
Many developers’ real workflows involve using macOS for local development environments, while servers, containers, and CI environments heavily use Linux. Problems often arise at this boundary. Installation scripts, build scripts, release scripts, and commands in project documentation may run directly on Linux, but fail in a clean macOS environment due to differences in basic tool options.
I do not think Apple should silently change long-standing BSD behaviors, as that could also break existing scripts. A safer direction might be incremental compatibility: preserving existing behavior, but adding some common Linux-compatible options where the semantics are clear, do not break macOS features, and do not break old scripts.
For example, issues like sed -i, common parsing options for date, output format options for stat, the behavior of readlink or realpath, and formatting capabilities of find. Each of these problems is small on its own, but together they affect script portability between macOS as a development environment and Linux servers and container environments.
Third-party package managers can help experienced users solve some of these problems (for example brew install coreutils uutils), but many scripts and project documentation must assume a clean macOS installation as the baseline. Therefore, the behavior of system-provided tools remains important.
So I would like to rephrase the request as: not replacing Apple’s existing tools, but selectively adding high-frequency Linux command-line compatibility support, provided it does not harm macOS filesystem semantics or system stability.