O comando mais comum para ler um arquivo de texto é cat
(ou less
se você quer ler página a página, mas não é sobre isso que estamos falando). Ele inicia do início e termina no final, o que é totalmente lógico mas não é sempre isso que precisamos. Se você quer ler um arquivo ao contrário (digo, quando precisamos ler um arquivo de log e você precisa da entrada mais recente primeiro), apenas execute cat
ao contrário. Isso mesmo: tac
faz o mesmo que cat
ao contrário.
E caso você não queira uma ordem específica mas quer as linhas da saída aleatoriamente misturadas? Para isso usamos o comando shuf
. Agora não será particularmente útil para arquivos de log (OK, é completamente inútil para arquivos de log), mas e se você quer uma lista de arquivos de música para passar ao tocador de músicas? A entrada não precisa ser um arquivo, pode ser uma entrada padrão, então você pode tocar seus arquivos Ogg Vorbis aleatoriamente com:
ls -1 ~/music/**/*.ogg | shuff | mplayer -playlist -
ou
mplayer $(ls -1 ~/music/**/*.ogg | shuff)