6 votes

Décompresser un fichier avec un ensemble de liste de mots de passe fourni

Y a-t-il une possibilité comme dans jDownloader, où les fichiers protégés par mot de passe sont automatiquement extraits en essayant tous les mots de passe un par un fournis par l'utilisateur?

Quelque chose comme ça :

$ décompresser foo.rar --liste-de-mots-de-passe baz.txt

5voto

nohillside Points 82672
  • Obtenez unar depuis http://unarchiver.c3.cx/commandline
  • Extrayez l'archive et placez unar (et lsar) quelque part où votre shell peut le trouver.
  • Exécutez

    while IFS= read pwd; do
        unar -p "$pwd" ARCHIVE
    done < password-list.txt

1voto

La solution de @patrix fonctionne parfaitement, sauf dans le cas où le mot de passe n'est pas disponible dans la liste fournie, alors l'archive produira beaucoup de fichiers de 0 octet. Ma solution modifiée vérifie si un mot de passe correspond, alors elle continue à désarchiver.

while IFS= read pwd; do
    if lsar -t "$1" -p "$pwd" | grep "[1-9][0-9]* passed" -E -q; then
        unar -p "$pwd" "$1"
        break
    fi
done < password-list.txt

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X