Проблема с перенаправлением вывода Bash

Я пытался удалить все строки файла, кроме последней, но следующая команда не сработала, хотя file.txt не пустой.

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

$cat file.txt

Почему это так?