FreeBSD e GNU sort
tem uma opção -V
para isso.
sort -V < filename
O GNU ls
tem uma opção -v
. Então, se esses arquivos existem, você poderia fazer:
xargs -d '\n' < filename ls -dv --
zsh
possui sinalizadores de expansão de parâmetro para classificar matrizes numericamente:
printf '%s\n' ${(fno)"$(<filename)"}
Caso contrário, portably, você teria que fazer assim:
sort -t_ -k1,1 -k2,2n -k3,3n -k4,4n -k5,5n filename