O que o thrig disse: alguma combinação de ferramentas de shell existentes deve fazer o que você quer. Algo parecido com isto:
% grep '^File ID:' file_list.txt | grep -o '[0-9]\+' | sort -n | uniq
8
9
10
Note que uniq
só olha para a linha anterior, então o sort
é necessário.
Se você precisar fazer algo mais sofisticado do que o apropriado para um shell one-liner, escolha um idioma que suporte a manipulação de pares de valores-chave e use a ID do arquivo como sua chave.