On 12/4/18 9:35 PM, 積丹尼 Dan Jacobson wrote: > Bob, I remember from my K&R Unix book that ls can be used in scripts. > In fact that is why > $ ls > acts different than > $ ls | cat > > Plus there are lots of things ls can do that find cannot. > > For instance sorting.
You didn't mention sorting in your original post, but actually that's a typical post-action which can be glued together the UNIX way via pipes, using the decorate-process-undecorate pattern: $ find -printf '%T@:%p\0' | sort -znr | cut -zd: -f2- | $PRG with e.g. PRG='head -zn1' to get the newest file. And yes, if you really want to cater for arbitrary file names with blanks, newlines, and control character - short: everything apart from '/' and '\0', or more malicious file names e.g. starting with '-' or '--' to fool scripts, then it is quite complex by nature to get it right: think about what you have to do in the consuming $PRG to perform the processing safely. > Are you saying you want to enhance find(1) to sort its output? No, because that what 'sort' is for. Have a nice day, Berny
