That’s surprising. I have an older version of coreutils (9.7 from Debian 13) that doesn’t produce the links and formatting. I’m running bash and the behaviour you’re experiencing isn’t reproduced.
Aliases aside, I wouldn’t expect the shell to be the cause. None the less, I installed version 4.0.2 of the fish shell and ran the same command in it and didn’t see any control characters. But that’s not really surprising - my old version of ls doesn’t produce them. So I ran ls | less because even with my version ls colour highlights files by type, but in the pipeline to less, there were no codes.
If I run ls --color=always | less then I do see codes in the less output.
You might check your environment variables to see if CLICOLOR_FORCE is set.
Otherwise, I am out of ideas.





It wouldn’t be a big problem if the unreliability of LLMs were part of ongoing professional development, use of LLMs without thorough fact checking was clearly barred by professional ethics, and lawyers were immediately disbarred for presenting false evidence if it came from an LLM.
It remains a “big” problem because it isn’t big enough for anyone to do anything about it, beyond criticizing and ridiculing lawyers who do it.