@JosephR. está no caminho certo. Mas não use% recursivorm
- você descobrirá que o menor bug de repente remove todo o seu diretório pessoal (ou pior). E para ser mais seguro, você pode querer garantir que todos os arquivos existam antes de remover qualquer um deles. Código não testado ao longo destas linhas:
$ cat deletar.sh
#!/bin/sh
set -o errexit -o noclobber -o nounset
tar tf "$1" | while read -r path
do
if ! [ -e "$path" ]
then
echo "$0: Path does not exist: $path" >&2
exit 1
fi
done
tar tf "$1" | grep -v '/$' | xargs rm -f
tar tf "$1" | grep '/$' | xargs rmdir