Problema com o redirecionamento de saída do Bash

Eu estava tentando remover todas as linhas de um arquivo, exceto a última linha, mas o seguinte comando não funcionou, embora file.txt não esteja vazio.

$cat file.txt |tail -1 > file.txt

$cat file.txt

Por que é tão?