Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3511 connectés 

 


Dernière réponse
Sujet : [Rar] Admettons que vous ayiez 1200 archives a décompresser...
Tetedeiench J'ai regardé dans le man bash tu penses le vieux réflexe, et j'avais rien capté :/
 
Ok, merci bcp mon grand, tu viens de me rendre un fier service :love:

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
Tetedeiench J'ai regardé dans le man bash tu penses le vieux réflexe, et j'avais rien capté :/
 
Ok, merci bcp mon grand, tu viens de me rendre un fier service :love:
minusplus spa trés clair mon truc...  
 
ça cherche dans $i la chaine .rar en partant de la fin et ça la coupe !
minusplus man bash ! :D
 
ça coupe dans la variable $i ce qui correspond au pattern *.rar
 

Citation :


       ${parameter%%word}
              The word is expanded to produce a pattern  just  as
              in  pathname  expansion.   If the pattern matches a
              trailing portion of the expanded value  of  parame�
              ter,  then  the  result  of  the  expansion  is the
              expanded  value  of  parameter  with  the  shortest
              matching  pattern  (the  ``%'' case) or the longest
              matching pattern (the  ``%%''  case)  deleted.   If
              parameter  is @ or *, the pattern removal operation
              is applied to each positional  parameter  in  turn,
              and the expansion is the resultant list.  If param�
              eter is an array variable subscripted with @ or  *,
              the  pattern  removal  operation is applied to each
              member of the array in turn, and the  expansion  is
              the resultant list.
 

Tetedeiench ct ca :  
 
for i in *.rar; do j=${i%*.rar} &&  mkdir $j && unrar x $i $j; done  
 
^^
 
merci minusplus :)
 
Par contre, tu peux m'expliquer rapidos le j=${i%*.rar} niveau traitement de la chaine ? Connais pas cette notation en fait ;)
Tetedeiench dommage y a un blem dans le unrar etc... je le modifie de suite :)
Tetedeiench Je teste mais je dois pas avoir tcsh :(
 
bash oui, et csh aussi...
 
je mate de suite :)
minusplus for i in *.rar; do j=${i%*.rar} &&  mkdir $j && unrar $i $j; done
 
edit: c bien sûr du bash ! :D

 

[jfdsdjhfuetppo]--Message édité par minusplus le 13-05-2002 à 17:59:06--[/jfdsdjhfuetppo]

Jar Jar Avec tcsh :
foreach i ( *.rar )
set j=`basename "$i" .rar`
mkdir "$j"
cd "$j" && unrar ../"$i"
end
 
En bash, les deux premières lignes doivent changer...
Tetedeiench Et que vous vouliez le faire chacune dans son répertoire.
 
par exemple l'archive "test.rar" dans le répertoire test, l'archive "neuneu.rar" dans le répertoire neuneu...
 
Vous tapez quoi sans avoir a tout faire a la main ?
 
merci :)
 
PS : rien vu de ce style dans les options de rar malheureusement :(

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)