Isso não é realmente fácil de fazer no sistema de arquivos. O nome do arquivo é na verdade três partes (8 caracteres cada, valores hexadecimais): Timeline, Logical XLOG, Physical Segment. Para saber o que é o "próximo" arquivo, você realmente precisa saber o que aconteceu com o banco de dados subjacente (novo xlog, nova linha de tempo, etc.).
Uma solução melhor se você estiver arquivando logs de transações é fazer com que seu comando de arquivamento também anexe o nome do arquivo que está sendo arquivado em uma lista em algum lugar - o Postgres passa o nome para seu script de arquivamento para que você não precise se preocupar sobre descobrir por si mesmo, e se todos os arquivos da lista estão presentes, você não tem lacunas.
(Isso não resolve o problema de ter certeza de que você não tem lacunas antes de implementar essa solução, então você deve faça um backup básico de acordo com o 24.3.2 no manual do Postgres depois de implementar esta solução ...