Eu sinto que esta pergunta é uma tarefa de casa. Deixe-me fazer isso por você.
*
nesse script provavelmente retornará uma listagem em ordem alfabética de um diretório. Então você poderia interceptar essa listagem e randomizar nesse ponto.
Você também pode carregar o conteúdo do diretório em uma matriz, escolher aleatoriamente um número - mod o tamanho da matriz e, se o resultado estiver vazio, avançar para a frente até atingir uma entrada não vazia. Em seguida, esvazie essa entrada enquanto a consome. Você precisaria de um contador ou algo para saber quantos elementos usou para saber quando consumiu todas as entradas.
Além disso, você pode carregar as entradas em algo como uma lista vinculada e criar uma entrada aleatória nº # para consumir e descartar da estrutura de dados.
Existem muitas outras opções. Mas eu acabei de te dar esboços para 3 abordagens cruas. Claro que não escrevi código para você, mas fiz a parte hard . Você é bem-vindo;)