Este foi provavelmente um bug.
Além disso, a palavra "file" é ambígua neste caso. Mas como este é um switch de linha de comando, eu esperaria significar também diretórios, porque no unix / lnux tudo é um arquivo, também um diretório. (A outra interpretação também é válida, mas não faz sentido manter diretórios em tal caso. Eu consideraria um comportamento inesperado e confuso.)
Mas eu descobri que no gnu tar em algumas distribuições o gnu tar na verdade remove a árvore de diretórios. Outra indicação de que manter a árvore era um erro. Ou, pelo menos, alguma solução até consertá-lo.
Isso é o que eu experimentei em um console do Ubuntu 10.04:
mit:/var/tmp$ mkdir tree1
mit:/var/tmp$ mkdir tree1/sub1
mit:/var/tmp$ > tree1/sub1/file1
mit:/var/tmp$ ls -la
drwxrwxrwt 4 root root 4096 2011-11-14 15:40 .
drwxr-xr-x 16 root root 4096 2011-02-25 03:15 ..
drwxr-xr-x 3 mit mit 4096 2011-11-14 15:40 tree1
mit:/var/tmp$ tar -czf tree1.tar.gz tree1/ --remove-files
# AS YOU CAN SEE THE TREE IS GONE NOW:
mit:/var/tmp$ ls -la
drwxrwxrwt 3 root root 4096 2011-11-14 15:41 .
drwxr-xr-x 16 root root 4096 2011-02-25 03:15 ..
-rw-r--r-- 1 mit mit 159 2011-11-14 15:41 tree1.tar.gz
mit:/var/tmp$ tar --version
tar (GNU tar) 1.22
Copyright © 2009 Free Software Foundation, Inc.
Se você quiser vê-lo em sua máquina, cole isso em um console por sua conta e risco:
tar --version
cd /var/tmp
mkdir -p tree1/sub1
> tree1/sub1/file1
tar -czf tree1.tar.gz tree1/ --remove-files
ls -la