Nesse caso específico, em que você tem apenas uma palavra por linha, também é possível fazer isso:
xargs touch < file
Observe que isso será interrompido se os nomes dos arquivos puderem conter espaços. Para tais casos, use isso:
xargs -I {} touch {} < file
Apenas por diversão, aqui estão algumas outras abordagens (ambas podem manipular nomes de arquivos arbitrários, incluindo linhas com espaços):
Observe que no Linux e em sistemas semelhantes, a extensão é opcional para a grande maioria dos arquivos. Não há motivos para adicionar uma extensão .txt
a um arquivo de texto. Você é livre para fazer isso, mas não faz diferença alguma. Então, se você quiser a extensão, use um dos seguintes:
xargs -I {} touch {}.txt < file
perl -ne ''touch "$_.txt"'' file
awk '{printf "" > $0".txt"}' file