Attached is a patch containing two optimizations for colorls.sh: 1) Don't do anything but set the "ll" and "l." aliases for noninteractive shells. 2) Avoid a bunch of stat calls whose results would just be thrown away. The csh variant could seemingly use similar optimizations, but I'm not a csh hacker so I'll leave it to someone else.
Created attachment 295095 [details] Optimize noninteractive shell case, reduce amount of stat calls
Thanks for optimizations. I used your patch with one change - aliases for non-colored ls are kept inside the [ -z "$LS_COLORS" ] - doesn't make sense to set them to non-colored and immediately to colored when LS_COLORS are set before colorls.sh run. Will keep .csh script as it is, as is used much less than .sh script. Built as coreutils-6.10-8.fc9 , closing RAWHIDE.
Yep, your change looks good. When making the patch, in some of my intermediate versions of it there was a chance that the "ll" and "l." aliases wouldn't be set at all which is why I moved them to the top level, but that's clearly no longer needed. Thanks!