Existem dois problemas aqui. Primeiro, você está declarando a variável "i", mas usando "$ file", que não existe. Mesmo se o fizesse, o segundo problema é que o bash lê "da esquerda para a direita". Isso significa que ele verá primeiro "> $ file" e sobrescreverá o conteúdo do arquivo. Portanto, se você estivesse usando as variáveis corretas, você teria perdido seus dados.
Então, um erro salvou você do outro, seu sortudo, sortudo :)
Tente algo como:
for i in *.txt ; do fold -w 1 $i > sillytmpfile; mv sillytmpfile $i; done