Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 25/05/2010, à 16:08

zapple

Astuce toute simple

J'avais aujourd'hui une liste assez longue de fichiers compressés sous format .rar et qui ont tous un mot de passe (le meme pour tous). Au départ, je faisais à la souris en sélectionnant tous les fichiers, puis clic droit => Extraire ici. Le problème, c'est qu'il fallait que je rentre le mot de passe à la main pour chaque fichier .rar, et c'était fastidieux. J'ai donc fait un man de unrar qui me dit qu'avec l'option -p<password>, je pouvais spécifier le mot de passe à entrer.

Il me suffisait donc de faire une petite boucle, comme ceci :


for i in `cat fic.txt`
do unrar x -p<password> $i
done

où le fichier fic.txt contient la liste de mes fichiers .rar.

Le tour était joué.

Dernière modification par zapple (Le 25/05/2010, à 16:10)

Hors ligne

#2 Le 25/05/2010, à 16:33

iuchiban

Re : Astuce toute simple

Attention, ça ne marche pas si tu as des fichiers avec des espaces dans le nom.
Utiliser alors une construction

while read i
do
  unrar x -p<password> "$i"
done < fic.txt

C'est depuis que Chuck Norris a laissé la vie sauve à un manchot que l'on dit que Linux est libre.

Chuck Norris n'a pas besoin d'éditer son premier message pour ajouter [Résolu]. Chuck Norris est toujours [Résolu], quoi qu'il arrive.

Hors ligne

#3 Le 25/05/2010, à 17:13

zapple

Re : Astuce toute simple

Avec la boucle while, ca ne fontionne pas non plus avec des fichiers contenant des espaces : je viens de tester. Dans ce cas là, je me prends pas la tete : j'ouvre le fichier avec vi, et avec un :%s/  */*/g, je remplace tous les espaces par *.

Hors ligne

#4 Le 25/05/2010, à 17:15

Pacifick_FR42

Re : Astuce toute simple

tu peux même mettre au début :
ls -l *.rar >> fic.txt

Hors ligne

#5 Le 25/05/2010, à 17:42

zapple

Re : Astuce toute simple

Si tu utilises ls -l *rar, il vaut mieux piper avec cut ou awk pour ne garder que le nom des fichiers, sinon il va prendre chaque colonne comme un fichier à extraire, et tu aura ce genre de message :

Cannot open locky.rar
Aucun fichier ou dossier de ce type
No files to extract

Cannot open 693540247.rar
Aucun fichier ou dossier de ce type
No files to extract

Cannot open 17:59.rar
...

parce que le ls -l affiche :

-rwxr-xr-x 1 locky locky 693540247 2010-05-25 17:59 DBZ_Pack_43*(Ep169à172).rar

Dernière modification par zapple (Le 25/05/2010, à 17:43)

Hors ligne

#6 Le 25/05/2010, à 17:58

kamui57

Re : Astuce toute simple

ou faire ls -1 à la place de ls -l


Quand le dernier arbre aura été abattu, et le dernier animal exterminé, les hommes se rendront compte que l'argent ne se mange pas (proverbe indien)
Toshiba Satellite L655 4 Go RAM, Archlinux Gnome-shell,LXDE / W7
Toshiba Satellite M30 512 Mo RAM, Archlinux Gnome 3 restreint / Crunchbang LXDE
https://help.ubuntu.com/community/Pastebinit pour poster du texte sur internet en console

Hors ligne

#7 Le 25/05/2010, à 18:06

Pacifick_FR42

Re : Astuce toute simple

kamui57 a écrit :

ou faire ls -1 à la place de ls -l

+1 effectivement, j'avais pas fait gaffe roll merci wink

Hors ligne