I don't think you would have to go as far as using co-processes since you don't have to send data back. Still as implied you would use getline much like how you could do it
here.
Code:
cmd = "stat -c '%y' " file
if (cmd | getline timestamp) {
...
close (cmd)
}
Yet that was actually not what I was concerned for. The problem was how you could test if a file is a file from multiple arguments. And directories are very irregular with their timestamp.
Probably we could make use of "find -type f [-maxdepth 1]", though in Bash as requested that would no longer be necessary.
As for sorting in Awk if numbered indices are not sorted by default with (i in a), we could make use of asort() but that function is still new.